Sprint
Erfahrenes Mitglied
Hallo zusammen,
ich habe hier eine eigentlich simple Funktion, die ein Array befüllen soll, anhand dessen später verschiedene Button ausgeblendet werden.
(Das hier ist auf das Wesentliche reduziert.)
Es funktioniert eigentlich wunderbar. Nur wenn als Basiscode 200 zurück kommt, wird die Abfrage auf nachtraeglich zwar ausgeführt, es wird aber immer
In jedem anderen Fall werden die korrekten Werte in das Array eingetragen, nur beim if nicht.
Für den unwahrscheinlichen Fall, daß der Browser trotz PHP irgendwas im Cache behält, habe ich auch schon einen ganz jungfräulichen Browser probiert, der noch nie etwas mit der Seite zu tun hatte - auch da das selbe Ergebnis. Ich habe keine Idee mehr, woran es jetzt noch scheitert.
ich habe hier eine eigentlich simple Funktion, die ein Array befüllen soll, anhand dessen später verschiedene Button ausgeblendet werden.
Javascript:
function mkuidext(pid, uidauftrag, nachtraeglich){
$.ajax({
type: "POST",
url: "checkuid.php",
data: {pid: pid, auftrag: uidauftrag},
success: function(data){
// returnCode ist Teil der zurückgegebenen Daten
var hideStatus = [];
var basiscode = returnCode.substr(0,3);
if (returnCode.substr(0,4) == '2000' || returnCode.substr(0,4) == '2220')
hideStatus = [3,4,5];
else{
switch(basiscode){
case '200':
if (nachtraeglich != 'N')
hideStatus = [3,4,5,8];
else
hideStatus = [1,3,4,5,8];
break;
case '201':
hideStatus = [1,2,3,4,7,8];
break;
case '202':
hideStatus = [1,2,3,7,8];
break;
}
}
hideStatus.forEach(function(stat){
$("#uidbuttB"+stat+uidauftrag).hide();
})
}
})
}
Es funktioniert eigentlich wunderbar. Nur wenn als Basiscode 200 zurück kommt, wird die Abfrage auf nachtraeglich zwar ausgeführt, es wird aber immer
hideStatus = [3,4,5,8];
ausgeführt. Ich habe schon alle Varianten ausprobiert, auf == 'N' und auf != 'N' abgefragt, für den Fall, daß er in einem case kein if mag und nur die erste Zuweisung nimmt. Ich habe mir nach den Zuweisungen und nach dem switch hideStatus ausgeben lassen. Es ist immer "3,4,5,8".In jedem anderen Fall werden die korrekten Werte in das Array eingetragen, nur beim if nicht.
Für den unwahrscheinlichen Fall, daß der Browser trotz PHP irgendwas im Cache behält, habe ich auch schon einen ganz jungfräulichen Browser probiert, der noch nie etwas mit der Seite zu tun hatte - auch da das selbe Ergebnis. Ich habe keine Idee mehr, woran es jetzt noch scheitert.