mgoertz: Abhänige Dropdownlisten

Beitrag lesen

Hallo zusammen

ich habe versucht in mein Skript mit Javascript abhängige Dropdownfelder umzusetzen.
Jedoch hab ich noch folgendes Problem

Die 2. Dropdownbox wird nicht gefüllt

Hier mein Code:

...
<script type="text/javascript">
<!--
<?php
// abhängiges Kombifeld erzeugen
    $rs=mysql_query(" select * from tbl_artikel;") or die(mysql_error());
    $rows=mysql_num_rows($rs);
    echo "\tvar liste2=new Array($rows)\n"
    . "\tfor(var i=0;i<liste2.length;i++)\n"
    . "\t\tliste2[i]=new Array(2);\n";
    $n=0;
    while($zeile=mysql_fetch_assoc($rs)) {
        echo "\tliste2[$n][0]=".$zeile['art_id'].";\n"
        . "\tliste2[$n][1]='".$zeile['art_bez']."';\n"
        . "\tliste2[$n][2]=".$zeile['art_grp'].";\n";
        $n++;
    }
?>
function update_drp2() {
    var x=document.frm_auswahl.drp2.length;
    for(var n=0; n<x; n++)
        document.frm_auswahl.drp2.options[0]=null;
    for(n=0; n<liste2.length; n++) {
        if(liste2[n][2]==document.frm_auswahl.drp1.value) {
            var NeuerEintrag=new Option(liste2[n][1], liste2[n][0]);
            document.frm_auswahl.drp2.options[document.frm_auswahl.drp2.length]=NeuerEintrag;
        }
    }
}
-->
</script>
</head>

<body>
...
<td width="70%" colspan="2" bgcolor="#ffffff"><div align="left">
    <form name="frm_auswahl">
    <select name="drp1" size="1" onChange="update_drp2()" class="input" style="WIDTH: 300px">
    <?php
        $rs=mysql_query("select * from tbl_art_gruppe") or die(mysql_error());
        while($zeile=mysql_fetch_assoc($rs)) {
            echo "<option value="".$zeile['art_grp_id']
            . "">".$zeile['art_gruppe']."</option>\n";
        }
    ?>
    </select>
        </div></td>
   </tr>
   <tr>
    <td width="30%" bgcolor="#e7e7e7" class="td"><div align="left">Art</div></td>
    <td width="70%" colspan="2" bgcolor="#ffffff"><div align="left">
    <select name="drp2" size="1" class="input" style="WIDTH: 300px">
        <option>Start</option>
    </select>
    </form>
<script type="text/javascript">
    update_drp2()
</script>

Im Browser wird kein gelbes Dreieck unten links angezeigt, nur wenn ich in der 1. Dropbox
den Eintrag ändere kommt unten links ein gelbes Dreieck der auf folgende Zeile Verweist

var x=document.frm_auswahl.drp2.length;

Kann mir dabei evtl jemand helfen den Fehler zu beheben ?
Weiß denn keiner von euch einen Rat ?