we:sessionField type="checkbox" wird nicht in die Kundenverw

Hier können Sie Fragen bezüglich der Kundenverwaltung stellen.
alaskana
webEdition Partner
webEdition Partner
Beiträge: 105
Registriert: Sa 5. Feb 2005, 08:09
Kontaktdaten:

we:sessionField type="checkbox" wird nicht in die Kundenverw

Beitragvon alaskana » So 1. Jul 2007, 07:19

Hallo zusammen,

ich arbeite gerade an einem Registrierungsformular. Generell ja keine größere Geschichte. Allerdings habe ich gerade das Problem, dass ich dem User eine Checkbox anbieten möchte, über die er einen Newsletter abonnieren kann. Die entsprechende Zeile sieht bei mir so aus:

Code: Alles auswählen

<we:sessionField xml="true" name="Newsletter_Ok" type="checkbox" id="s[Newsletter_Ok]" />
Nach der Definition in der leider etwas mauen Tag-Referenz müsste das auch funktionieren.
Dieses Tag dient dazu, eine HTML-Checkbox auf dem fertig generierten webEdition-Dokument anzuzeigen, mit der man einem Sessionfeld den Wert 0 (nicht aktiviert) oder 1 (aktiviert) zuweisen kann.
Das interessante daran ist, dass der generierte HTML-Code wie folgt aussieht.

Code: Alles auswählen

<input id="s[Newsletter_Ok]" type="checkbox" value="1" name="3bde168f8d7edf5de8ea8d160501cf1f" onclick="this.form.elements['s[Newsletter_Ok]'].value=(this.checked) ? 1 : 0" /><input type="hidden" name="s[Newsletter_Ok]" value="" />
Was soll denn da dieses versteckte input-Element? Sehe ich das richtig, dass dies afür verantwortlich ist, dass in der Kundenverwaltung weder eine 0 noch eine 1 ankommt?

Kann mir jemand bitte auf die Sprünge helfen?

Vielen Dank schon mal im Voraus.

alaskana

Dirk Einecke
Senior Member
Beiträge: 3735
Registriert: Do 1. Jan 1970, 02:00
Wohnort: Karlsruhe
Kontaktdaten:

Beitragvon Dirk Einecke » Di 17. Jul 2007, 08:51

Hi,

wenn ein Input-Feld vom Typ "checkbox" nicht aktiviert ist, dann wird es auch nicht übertragen. Aus diesem Grund gibt es da ein hidden-Feld welches den Wert 0 übertragt wenn die Checkbox nicht aktiviert ist. Das ganze funktioniert natürlich nur, wenn JavaScript aktiviert ist.

alaskana
webEdition Partner
webEdition Partner
Beiträge: 105
Registriert: Sa 5. Feb 2005, 08:09
Kontaktdaten:

Beitragvon alaskana » Di 17. Jul 2007, 09:55

Hallo Dirk,

vielen Dank für die Antwort, aber so ganz schlau werde ich daraus leider nicht. Das "hidden"-Feld hat ja keinen Wert, was vermutlich durch das JavaScript verändert werden soll. Anscheinend funktioniert dies aber nicht, da in meinem Fall immer kein Wert an die Kundenverwaltung übertragen wird. Hattet ihr schon mal einen ähnlichen Fall, bei dem der Wert der Checkbox nicht übertragen wurde? Wenn ich nämlich anstelle der Checkbox zwei Radiobuttons verwende (ja = 1, nein = 0), werden diese Werte sauber in die Kundenverwaltung übertragen, nicht aber bei der Verwendung von Checkboxen. Kann sich bzw. mir das jemand erklären.

JavaScript ist bei mir übrigens nicht deaktiviert.

Viele Grüße

alaskana

Dirk Einecke
Senior Member
Beiträge: 3735
Registriert: Do 1. Jan 1970, 02:00
Wohnort: Karlsruhe
Kontaktdaten:

Beitragvon Dirk Einecke » Di 17. Jul 2007, 12:06

Hi,

das es bei Ihnen nicht funktioniert liegt daran, dass Sie bei <we:sessionField>-Tag ein id="s[Newsletter_Ok]" gesetzt haben und der daraus resultierende Quellcode einen Konflik wegen doppleter Vergabe dieses Wertes verursacht. Setzen Sie einfach beim <we:sessionTag> beim Attribut "id" einen anderen Wert.

alaskana
webEdition Partner
webEdition Partner
Beiträge: 105
Registriert: Sa 5. Feb 2005, 08:09
Kontaktdaten:

Beitragvon alaskana » Fr 20. Jul 2007, 07:26

Herzlichen Dank für den Hinweis.

Wäre es evtl. denkbar, dass von webEdition intern vergebene ID mit dem Präfix "we_" versehen werden? So könnte man doppelte IDs vermeiden. Aber sicher habt ihr euch dazu schon mal eure Gedanken gemacht.


Viele Grüße
alaskana


Zurück zu „Kundenverwaltung“

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast