$_POST und Select->Option


arraybreak

Erfahrenes Mitglied
Tag zusammen,

drehe gerade durch, habe folgendes Problem:

Habe 2 Selectoption zur Auswahl, sieht so aus, und bedeutet, dass nur eine dieser Auswahl angezeigt wird, die andere wird durch jQuery versteckt, ob erste oder zweite Auswahl angezeigt wird, wird durch eine Vorwahl entschieden, die hier nicht angegeben ist.
HTML:
<div id="1_set">
    <select id="MY" name="MY" size="1" onchange="Del_Data()">   
      <option id="auswahl1" value="Audi">Audi</option>
      <option id="auswahl2" value="BMW">BMW</option>
    </select>
</div>

<div id="2_set">   
    <select id="MY" name="MY" size="1" onchange="Del_Data()">   
      <option id="auswahl1" value="Mazda">Mazda</option>
      <option id="auswahl2" value="Opel">Opel</option>
    </select>
</div>
(Select ID und Name müssen bei beiden Select-Auswahlen gleich sein)


Danach wird es mit Formular durch POST abgeschickt, das Problem dabei ist, dass er die Richtige Auswahl übergibt und immer die erste von anderer Select-Auswahl.

Beispiel:
Ich habe bei erstem Select die Auswahl "BMW" ausgewählt.
Durch $_POST wird "BMW" übergeben und zusätzlich "Mazda" aus dem zweiten Formular.

Was mache ich falsch? Im Netz habe ich auch schon alles durchgesucht :(

LG
 

SpiceLab

ZENmechanic
Das beschriebene Script-Fehlverhalten beruht schlichtweg auf dem doppelt vergebenen ID-Bezeichner; dieser muß im HTML-Dokumentbaum aber immer eindeutig sein.
 

arraybreak

Erfahrenes Mitglied
Habe jetzt so probiert, jetzt übergibt er aber garnichts mehr :(
HTML:
<div id="1_set">
    <select name="MYONE" size="1" onchange="Del_Data()">   
      <option id="auswahl1" value="Audi">Audi</option>
      <option id="auswahl2" value="BMW">BMW</option>
    </select>
</div>
<div id="2_set">   
    <select name="MYONE" size="1" onchange="Del_Data()">   
      <option id="auswahl1" value="Mazda">Mazda</option>
      <option id="auswahl2" value="Opel">Opel</option>
    </select>
</div>
 

SpiceLab

ZENmechanic
Das ist auch nicht die logische Schlußfolgerung - gleiches gilt nämlich für den NAME-Bezeichner.

Wenn das Script daraufhin die Arbeit komplett eingestellt hat, tippe ich darauf, dass darin noch der ehemalige ID- u. NAME-Bezeichner MY genannt wird.

Andernfalls werfe einfach mal einen Blick in die Fehlerkonsole.

Und wieso tauchen die IDs der <option>-Elemente weiterhin doppelt auf?

Desweiteren darf ein ID-Bezeichner nicht mit einer Ziffer beginnen: Attribut-Referenz - ID, IDREF oder NAME.

Nachtrag
Eindeutige ID- und NAME-Bezeichner würden hier beispielsweise so lauten:
HTML:
<div id="set_1">
    <select id="MY_1" name="MY_1" size="1" onchange="Del_Data()">
      <option id="auswahl1_1" value="Audi">Audi</option>
      <option id="auswahl2_1" value="BMW">BMW</option>
    </select>
</div>
<div id="set_2">
    <select id="MY_2" name="MY_2" size="1" onchange="Del_Data()">
      <option id="auswahl1_2" value="Mazda">Mazda</option>
      <option id="auswahl2_2" value="Opel">Opel</option>
    </select>
</div>
_________________________
[edit]Code-Beispiel ergänzt[/edit]
 
Zuletzt bearbeitet:

Neue Beiträge