[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
rex_form: id für fieldset möglich? - REDAXO Forum
Hallo,

Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.

Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt :-)
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Frezl
Beiträge: 160
Registriert: 13. Aug 2009, 14:31

rex_form: id für fieldset möglich?

10. Mai 2012, 18:19

Hey allerseits,

ich suche nach einer Möglichkeit, einem rex_form-fieldset eine id zu geben damit ich dieses per JS ein- und ausblenden kann. Habe in der Klassenreferenz und der Doku dazu leider keinen Hinweis gefunden.

Ohne id sind die Fieldsets zwar schön anzusehen, haben aber leider keine wirkliche Funktion :-P

Viele Grüße,
Frezl

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: rex_form: id für fieldset möglich?

10. Mai 2012, 19:05

Ist nicht vorgesehen.. workaround: per JS zuweisen.
vg, Jan

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: rex_form: id für fieldset möglich?

10. Mai 2012, 19:52

Hab grad mal gekuckt.. man kann das auch nicht "von hint" ins rex_form object reinhacken.. die Fieldsetnamen sind wirklich nur array keys für das array der form elemente: http://dl.dropbox.com/u/10220684/screen ... .33.41.PNG

Aber anonym per JS (oder CSS & JS) geht was du willst.. (wobei ich das display:none eher per CSS machen würde als onload per JS..):

Code: Alles auswählen

jQuery(function($){ // onload
  $(".rex-form fieldset .rex-form-wrapper").css("display","none");
});

(function($){ // toggler
  $(".rex-form fieldset legend").click(function(){
    $(this).next(".rex-form-wrapper").toggle("fast");
  });
})(jQuery);
vg, Jan

NGW
Beiträge: 132
Registriert: 1. Mär 2011, 09:12
Kontaktdaten: Website

Re: rex_form: id für fieldset möglich?

10. Mai 2012, 19:59

Oder einfach nen Fieldset mit id per "html|" reinhauen ...

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: rex_form: id für fieldset möglich?

10. Mai 2012, 20:03

NGW hat geschrieben:Oder einfach nen Fieldset mit id per "html|" reinhauen ...
rex_form != xform ;)
vg, Jan

NGW
Beiträge: 132
Registriert: 1. Mär 2011, 09:12
Kontaktdaten: Website

Re: rex_form: id für fieldset möglich?

11. Mai 2012, 12:26

Oh ja, ich hätte mal richtig lesen sollen :-)

Frezl
Beiträge: 160
Registriert: 13. Aug 2009, 14:31

Re: rex_form: id für fieldset möglich?

16. Mai 2012, 00:53

Vielen Dank für die Tipps! Bei mir soll sich ein bestimmtes Fieldset ein- oder ausblenden, je nachdem welche Option ich in einer Select-Box ausgewählt habe. Meine Lösung ist aber so ähnlich, wie du vorgeschlagen hast:

Code: Alles auswählen

        if ($('#rex_' + mypage + '_type_id option[class="rex_' + mypage + '_use_date"]').attr("selected") == "selected") {
            $('.rex-form-col-1 legend:contains("Datum")').parent().show();
        } else {
            $('.rex-form-col-1 legend:contains("Datum")').parent().hide();
        }
Aber so ganz sexy ist das nicht, weil ich jetzt den Titel des Fieldsets besser nicht mehr ändern sollte...

Außerdem ist die Lösung, um die nötige Information in die Select-Options zu bringen, auch eher von hinten durch die Brust ins Auge:

Code: Alles auswählen

            // Als CSS-Klasse wir die Information, welche weiteren Eingabefelder benötigt werden, gespeichert.
            // Diese kann dann per jQuery ausgelesen werden:
            while ($row = $sql->getRow ()) {
                $select->addOption (
                    $row['name'],       // name
                    $row['type_id'],    // value
                    0,                  // id
                    0,                  // re_id
                    array (             // attributes
                        'class' => ($row['use_date'] == '1' ? 'rex_' . $mypage . '_use_date' : '')
                    )
                );
                if ($row['standard'] == 1) {
                    $standard_value = $row['type_id'];
                }
            }
An der Stelle merkt man dann doch, dass Redaxo ohne den Hintergedanken, die Oberfläche mit JavaScript nach zu bearbeiten, entwickelt wurde. Das fände ich ne tolle Neuerung für die nächste Version!

Viele Grüße,
Frezl

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: rex_form: id für fieldset möglich?

16. Mai 2012, 13:06

Am besten du schnappst dir die rex_form class aus 4.3.4, denn da gibt es die neue Methode addRawField($html) mit der du beliebiges HTML in die form packen kannst.. u.a. kannst du dir damit wrapper um Blöcke bauen die du leicht per JS ansprechen kannst.

Ansonsten: für die Formelemente selbst kannst du per setAttribute() auch Klassen oder IDs vergeben. Diese Attribute werden auf das wrappende p Element angewendet.. hierbei mußt du beachten, daß wenn du Klassen vergibts, die Originalklassen überschrieben werden, d.h. du mußt die Originalklassen plus deiner eigenen angeben.
vg, Jan

Ingo
Beiträge: 782
Registriert: 24. Jun 2010, 00:34

Re: rex_form: id für fieldset möglich?

17. Mai 2012, 21:37

Code: Alles auswählen

<script>
jQuery(function ($) {
	var $fieldset = $('#bekannteIdInnerhalbDesFieldsets').closest('fieldset');
	// mach irgendwas mit dem fieldset...
});
</script>

Frezl
Beiträge: 160
Registriert: 13. Aug 2009, 14:31

Re: rex_form: id für fieldset möglich?

18. Mai 2012, 01:35

Danke euch beiden für die Tipps!

closest () hab ich noch nicht gekannt. Wenn es das tut, was der Name sagt, ist das ne sehr spannende Funktion :-)

Wusste nicht, dass wir schon bei 4.3.4 sind. Ich arbeite immer mit der Klassenreferenz, die Google als erstes ausspuckt - das ist leider die 4.3.1. Werd mir das addRawField () mal anschaun, das klingt sehr interessant.

Viele Grüße,
Frezl

Benutzeravatar
jdlx
Beiträge: 2615
Registriert: 29. Sep 2005, 10:50
Wohnort: Hamburg
Kontaktdaten: Website

Re: rex_form: id für fieldset möglich?

18. Mai 2012, 01:47

http://docs.redaxo.com/de/4.3.2/classes.html

such-bookmarklet:

Code: Alles auswählen

javascript:void(q=prompt('REX%20>%20Search%20>%204.3.2%20docs:',''));if(q!=null&&q!=%22%22){void(open('http://docs.redaxo.com/de/4.3.2/search.php?query='+escape(q),'search_rex_docs'))}
vg, Jan

Zurück zu „Allgemeines [R4]“