Bullet1990
Mitglied
Moin Leute,
ich hab die folgende Javascript-Funktion:
Ganz oben seht ihr ja die drei Variablen mit dem Startwert 0.
Innerhalb der switch-Anweisung werden diese auf 1 gesetzt, wenn sie die Bedingung erfüllen.
Durch alert-Test weiß ich, dass das Ändern auf 1 innerhalb der switch-Anweisung funktioniert und die Variablen die neuen Werte auch erhalten.
Mein Problem ist jedoch, dass sie wieder den Wert 0 annehmen, sobald die Umgebung der switch-Anweisung verlassen wird.
Der untere alert-Befehl gibt "0 0 0" aus, obwohl mindestens einer der Werte hätte 1 sein sollen.
Sieht jemand den Bug?
ich hab die folgende Javascript-Funktion:
Code:
function showData(node, content, i)
{
var fst = 0;
var scnd = 0;
var thrd = 0;
if(window.XMLHttpRequest())
{
xmlhttp = new XMLHttpRequest();
}
else
{
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function()
{
if(xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
if(i == 0)
{
document.getElementsByClassName("panel")[0].outerHTML = document.getElementsByClassName("panel")[0].outerHTML + xmlhttp.responseText;
}
else
{
var id = "";
var dec = i-1;
switch(node){
case "lic_id":
id = "1"+dec;
if(nodeExisting(5))
{ fst = 1;}
if(nodeExisting(7))
{ scnd = 1;}
if(nodeExisting(8))
{ thrd = 1;}
break;
case "k_u_id":
id = "2"+dec;
if(nodeExisting(5))
{ fst = 1;}
if(nodeExisting(3))
{ scnd = 1;}
break;
case "dep_id":
id = "3"+dec;
if(nodeExisting(2))
{ fst = 1;}
if(nodeExisting(5))
{ scnd = 1;}
break;
case "l_id_f":
id = "4"+dec;
if(nodeExisting(4))
{ fst = 1;}
break;
case "sys_id":
if(nodeExisting(1))
{ fst = 1;}
if(nodeExisting(2))
{ scnd = 1;}
if(nodeExisting(3))
{ thrd = 1;}
id = "5"+dec;
break;
case "bu_id":
id = "6"+dec;
if(nodeExisting(6))
{ fst = 1;}
break;
case "l_name":
id = "7"+dec;
if(nodeExisting(1))
{ fst = 1;}
if(nodeExisting(3))
{ scnd = 1;}
break;
case "host":
id = "8"+dec;
if(nodeExisting(1))
{ fst = 1;}
break;
}
hideUpperNode(id.charAt(0), dec);
document.getElementById(id).outerHTML = document.getElementById(id).outerHTML + xmlhttp.responseText;
}
}
}
alert(fst + " " + scnd + " " + thrd);
xmlhttp.open("GET", "ajaxdata?node="+node+"&content="+content+"&i="+i+"&fst="+fst+"&scnd="+scnd+"&thrd="+thrd,true);
xmlhttp.send();
}
Ganz oben seht ihr ja die drei Variablen mit dem Startwert 0.
Innerhalb der switch-Anweisung werden diese auf 1 gesetzt, wenn sie die Bedingung erfüllen.
Durch alert-Test weiß ich, dass das Ändern auf 1 innerhalb der switch-Anweisung funktioniert und die Variablen die neuen Werte auch erhalten.
Mein Problem ist jedoch, dass sie wieder den Wert 0 annehmen, sobald die Umgebung der switch-Anweisung verlassen wird.
Der untere alert-Befehl gibt "0 0 0" aus, obwohl mindestens einer der Werte hätte 1 sein sollen.
Sieht jemand den Bug?