Hallo,
ich möchte dynamisch ein drop-down Feld erzeugen. Das heißt, sobald im Drop-Down Feld "group1" ein Value ausgewählt wurde, das größer als 0 ist, soll ein weiteres Drop-Down Feld erscheinen. Das soll die gleichen Eigenschaften wie "group1" enthalten, mit dem Unterschied, dass das Feld "group11" heißt. Das Problem dabei ist jetzt nur, dass mein onChange-Attribut in "group11" nicht funktioniert.Sobald ich den Wert ändere, passiert...nichts.
Ich hoffe, dass mir jemand helfen kann. Danke!
Hier ist mein JScript :
<script language="javascript">
function addGroup(name){
var anzahl = document.getElementsByName(name)[0].length;
var value;
var i = 0;
while(i < anzahl){
if(document.getElementsByName(name)[0].options[i].selected == true){
value = document.getElementsByName(name)[0].options[i].value;
break;
}
i = i + 1;
}
if(value > 0){
var laenge = name.length - 5;
var zahl = name.substr(5, laenge);
zahl += 1;
var neuername = "group".concat(zahl);
var tableRow = document.createElement("tr");
var tableColumn = document.createElement("td");
var dropdown = document.createElement("select");
var dd_default = document.createElement("option");
var dd_text = document.createTextNode("bitte auswählen");
var dd_name = document.createAttribute("name");
var dd_value = document.createAttribute("value");
var dd_select = document.createAttribute("selected");
var dd_change = document.createAttribute("onChange"); // <-- WICHTIGE STELLE 1
dd_name.nodeValue = neuername;
dd_value.nodeValue = '0';
dd_change.nodeValue = 'javascript:addGroup("'+neuername+'");'; // <-- WICHTIGE STELLE 2
dd_default.setAttributeNode(dd_value);
dd_default.setAttributeNode(dd_select);
dropdown.setAttributeNode(dd_name);
dropdown.setAttributeNode(dd_change); // <-- WICHTIGE STELLE 3
dd_default.appendChild(dd_text);
dropdown.appendChild(dd_default);
<?php $i = 0;
while($i < count($groups['id'])){?>
var dd_entry = document.createElement("option");
var dd_entry_value = document.createAttribute("value");
dd_entry_value.nodeValue = '<?php echo $groups['id'][$i]; ?>';
var dd_entry_text = document.createTextNode('<?php echo $groups['groupname'][$i]; ?>');
dd_entry.appendChild(dd_entry_text);
dropdown.appendChild(dd_entry);
<?php $i++; } ?>
tableColumn.appendChild(dropdown);
tableRow.appendChild(tableColumn);
document.getElementById("groupTable").appendChild(tableRow);
}
}
</script>