OnLoad führt keine Funktionen aus

LiridonaAdemi

Grünschnabel
ich programmiere mit php und smarty und bin noch anfänger in javascript
Mein problem ist, dass in dem Code unten das onload nicht die funktionen ausführt.

HTML:
<body onLoad="showDivOnTest({$nMaxProjektID}, 'testfall');showNext({$nMaxProjektID}, 'testfall', 'Speichern und weiter mit Test');showNext({$nMaxTestfallID}, 'paket', 'Speichern und weiter mit Test');showArt({$nMaxPaketID}, 'test');" >

....

<div class="table">Projektvorlage
                        <br>
                        <div class="table">
                            <select name="VProjektID" id="testfall" onchange="showDivOnTest(this.value, id);
                                    showNext(this.value, id, '')">
                                <option value="">Keine</option>
                                {foreach key=id item=strGetVorlagen from=$strGetVorlagen}
                                    <option value="{$strGetVorlagen.ID}" {if $button == "Speichern und weiter mit Test"}{if $nMaxProjektID==$strGetVorlagen.ID}selected{/if}{/if}>{$strGetVorlagen.Projektname}</option>
                                {/foreach}
                            </Select>
                        </div>
                    </div>
                    <div class="table">Testfallvorlage
                        <br>
                        <div class='table'>
                            <select name='VTestfallID' id='paket' onchange='showNext(this.value, id, "");
                                    showDivOnTest(this.value, id);'>
                                <option value="" selected="">Keine</option>
                                {foreach key=id item=strGetTestfallVorlagen from=$strGetTestfallVorlagen}
                                    <option value="{$strGetTestfallVorlagen.ID}" {if $button == "Speichern und weiter mit Test"}{if $nMaxTestfallID==$strGetTestfallVorlagen.ID}selected{/if}{/if}>{$strGetTestfallVorlagen.Testfallname}</option>
                                {/foreach}
                            </Select>
                        </div>
                    </div>
                    <div class="table">Paketvorlage
                        <br>
                        <div class="table">
                            <select name="VPaketID" id="test" onchange="showArt(this.value, id);
                                    showDivOnTest(this.value, id)">
                                <option value="">Keine</option>
                                {foreach key=id item=strGetPaketVorlagen from=$strGetPaketVorlagen}
                                    <option value="{$strGetPaketVorlagen.ID}" {if $button == "Speichern und weiter mit Test"}{if $nMaxPaketID==$strGetPaketVorlagen.ID}selected{/if}{/if}>{$strGetPaketVorlagen.Paketname}</option>
                                {/foreach}
                            </Select>
                        </div>
                    </div>
                    <div id="visible" style="display:none">
                        <div id="txtHinttestfall"></div>
                        <div id="txtHintpaket"></div>
                        <div id="Arttest"></div>

                    </div>
                    <div id="visible2" style="display:block">
                        <div class="table">Testart:</div>   <div class="table"><input type="radio" name="Testart" value="Standard">Standard
                            <input type="radio" name="Testart" value="Erweitert">Erweitert</div><br>
                    </div>

Javascript:
function showDivOnTest(str,id) {
    alert("Funktffhgftd");
    if (str === "") {
        document.getElementById("visible2").style.display = "block";
        document.getElementById("visible").style.display = "none";
    } else {
        document.getElementById("visible2").style.display = "none";
        document.getElementById("visible").style.display = "block";
    }
   
if(id === "testfall"){
    document.getElementById("paket").value = "";
    document.getElementById("test").value = "";
}else if(id === "paket"){
    document.getElementById("testfall").value = "";
    document.getElementById("NoneWhenVorlage").style.display = "none";
    document.getElementById("test").value = "";
}
else if(id === "test"){
    document.getElementById("NoneWhenVorlagePaket").style.display = "none";
    document.getElementById("NoneWhenVorlage").style.display = "none";
    document.getElementById("testfall").value = "";
    document.getElementById("paket").value = "";
}

}


function showNext(str, area, button) {
    alert("Funktffhgftd");
    if (str === "") {
        document.getElementById("txtHint" + area).innerHTML = "";
        return;
    } else {
        xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function () {
            if (this.readyState === 4 && this.status === 200) {
                document.getElementById("txtHint" + area).innerHTML = this.responseText;
            }
        };
        xmlhttp.open("GET", "main.php?bereich=vorlage_erstellen&button=" + button + "&area=" + area + "&q=" + str, true);
        xmlhttp.send();
    }
}

Zunächst einmal hätte ich gerne, dass das showDivOnTest funktioniert, den rest ergledige ich dann später.
Vielleicht kann mir ja jemand helfen
 
Warum Du das JavaScript-Problem im PHP-Forum gepostet hast, bleibt Dein Geheimnis, denn die serverseitige Scriptsprache PHP kennt überhaupt keinen onload-Event.

Ich habe es auf jeden Fall entsprechend verschoben.
 
Zurück