Hallo,

sitze aktuell an einem kleinen Fragebogen mit Dropdowns, die voneinander abhängen. Zunächst habe ich das Template-System aus den hiesigen Tutorials gehabt, aber da ich leichte Probleme mit dem "Belegen" eines Javascript-Arrays mit Werten aus der Datenbank hatte, wollte ich das ganze erst einmal ohne das Template-System aufziehen, obwohl es mir ziemlich gefällt...
Gesagt getan - gesamten Code mitsamt JS in eine einzige Datei gepackt und plötzlich geht der Javascript Code nicht mehr
Hängt sicher irgendwie damit zusammen, dass es jetzt eine große Datei ist, aber ich wüsste gerne, wieso...

Codeschnipsel Javascript - vor einiger Zeit im Internet gefunden:

PHP-Code:
function makeSublist(parent,child,isSubselectOptional)
{
    $(
"body").append("<select style='display:none' id='"+parent+child+"'></select>");
    $(
'#'+parent+child).html($("#"+child+" option"));
    $(
'#'+child).html("<option> --- </option>");        
    $(
'#'+parent).change(
        function()
        {
            var 
parentValue = $('#'+parent).attr('value');
            $(
'#'+child).html($("#"+parent+child+" .sub_"+parentValue).clone());
            if(
isSubselectOptional) $('#'+child).prepend("<option> -- Select -- </option>");
        }
    );
}

$(
document).ready(function()
    {
        
makeSublist('parent','child',false);    
    }); 
Codeschnipsel Klassenmethode zum "Ausgeben" der Auswahlpunkte. Hier noch mit Rückgabestring, hatte es aber auch schon mit echo direkt ausgegeben.

PHP-Code:
    global $dbConn;
    
    
$msg "";

    
$result $dbConn->prepare("SELECT DISTINCT sid, bezeichnung FROM sw_schneckenarten WHERE gid = :id");
    
    
$result->bindParam(':id'$Gattungsid);
    
$result->execute();
    
    
$result->bindColumn('sid'$schneckenid);
    
$result->bindColumn('bezeichnung',$schneckenname);
    
    foreach(
$result as $data)
        {        
        
$msg .= "<option class=\"".$className."\" value=\"".$schneckenid."\">".$schneckenname."</option>\n";
        }
        
    
        
    return 
$msg
$className ist ein Übergabeparameter, enthält beispielsweise sub_Achatina.

Codeschnipsel HTML/PHP index.php
PHP-Code:
<select id="parent">
    <option value="0" selected="selected">Bitte wählen</option>
    <option value="Achatina">Achatina-Gattung</option>
</select>

<select id="child">


<?
echo $subAchatina;
?>
Irgendwo hakts bei mir
Falls aber jemand eine Lösung zu meinem "ersten" Problem mit dem Javascript-Array mit Werten aus Datenbank befüllen in dem hier vorgestellten Template-System hat, bin ich auch dafür offen... würde mir persönlich auch mehr zusagen, allerdings wüsste ich nicht, wie ich das bewerkstelligen kann *grübel*


VG,
Cara