Hallo,
ich lasse mir über eine Foreach-Schleife eine HTML-Tabelle
mit Select-Boxen ausgeben. In der wird für jeden Benutzer
jeweils eine Select-Box "Vorwahl-Telefon" und eine Select-Box"Telefonnummer"
erstellt:
HTML-Code:
[PHP] foreach ($treffer as $wert) { [/PHP]
<td><input id="txt_Nutzername" name="nutzername[<?php echo($nutzerid);?>]" type="text" value="<?php echo($wert[0]['nutzername']);?>"></td>
<td><select id="sel_Tel1" name="selectTel1[<?php echo($nutzerid);?>]" size="1"><?php fkt04_SelectBox_Telefonnr_befuellen($nutzerid, $tel1); ?></select></td>
<td><select id="sel_VW_Tel2" name="select_VW_Tel2[<?php echo($nutzerid);?>]" size="1"><?php fkt03_SelectBox_Vorwahl_Telefonnr_befuellen($nutzerid, $vwtel2); ?></select></td>
[PHP] } [/PHP]
Beim ersten Aufruf des Formulars werden die Boxen durch php-Funktionen gefüllt. Das klappt. Nun will ich mittels JavaScript realiseren, dass bei Änderung der SelectBox "Vorwahl"
die entsprechenden verfügbaren "Telefonnummern" für diese Vorwahl in der SelectBox "Telefonnummer" geladen werden. Dafür nutze ich folgendes Script:
Code:
<script type="text/javascript">
$(document).ready(function () {
$("#sel_VW_Tel1").change(function(){ //selectbox_1 wird bei OnChange Event nachfolgende Funktion zugewiesen
var id_auswahl=$(this).children('option:selected').val(); //Speicherung des selektierten Werts in der Variablen 'id_hauptkategorie'
$("#sel_Tel1").load('php/Inhalt3/inhalt3.js.select.vorwahl.php',{value: id_auswahl}); //Auffüllen der zweiten Selectbox mittels Aufruf "selectboxen.php" als Parameter Variable "'id_hauptkategorie' mit übergebenwird
});
});
</script>
Wenn ich nun z.B. 3 Nutzer in der Datenbank habe. Wird mit durch die Foreach-Schleife
eine HTML-Tabelle mit 3 Zeilen angelegt. Wobei die SelectBoxen "sel_VW_Tel1" (Auswahl Vorwahl Telefonnr.) und "sel_Tel1" jeweils 3 mal, also für jeden Nutzer angelegt werden. Bei dem ersten Nutzer der durch die Foreach-Schleife angelegt wird funktioniert das ganze, d.h. eine Änderung der SelectBox (Vorwahl) bewirkt bei Ihm auch eine Änderung der SelectBox (Telefonnummer). Bei den anderen Nutzer passiert gar nichts. Da jeweils alle SelectBoxen die gleiche ID haben (sel_Tel1) hätte ich eigentlich erwartet das sich alle Telefonnummernboxen ändern sobald irgendeine der Vorwahlboxen geändert wird. Im Prinzip soll es aber schon so sein das nur die Telefonnummernbox geändernt wird deren Vorwahlbox auch geändert wurde. Irgendwie müsste ich den Namen der Selectboxen auswerten, weil der aufgrund der nutzerid unterschiedlich ist. Kann mir hier jemand weiterhelfen?