jquery로 ajax 호출을 수행하는 동안 사용자에게 무슨 일이 일어나고 있는지 알 수 있도록 회전하는 gif 이미지를 제공하고 싶습니다. async : false를 사용해야합니다. 그렇지 않으면 코드가 혼란스러워서 잘못된 세션 변수로 끝나기 때문입니다. 여기에 (전화 화면을 동결했다 때까지 GIF를 표시하지 않습니다.) 내가 무엇을 가지고이 경우jquery async가 거짓 일 때 이미지로드
$('#status' + itemNum).html("<img width='14px' src='/style/images/spinner.gif'>");
if (foo == "bar") {
$.ajax({
type:"POST",
url: "foobar.html",
async:false,
data: "val1=" + escape(newValue) + "&val2=" + fieldName + "&val3=" + newValue2
})
} else {
$.ajax({
type:"POST",
url: "foobar.html",
data: "val1=" + escape(newValue) + "&val2=" + fieldName + "&val3=" + newValue3
})
document.getElementById('status' + itemNum).innerHTML = "SAVED";
}
$("#status" + itemNum).show();
setTimeout("fade_out('"+itemNum+"')", 1000);
}
난 단지 비동기 때 foo는 = 줄을합니다. 누구든지 왜 전화 후에 spinner.gif가로드되는지 알려주실 수 있습니까? 회 전자가 다른 곳에 있지 않고 로딩에 지연이 있기 때문에 생각할 수 있습니다.하지만 여러 번 호출 될 때 표시되지 않습니다 (그때까지 캐시에 있어야합니다). 그래서 나는 혼란 스럽습니다.
감사합니다.
사악하고 고통스러운 SJAX 세계에 오신 것을 환영합니다. – SLaks
또한 문자열을'setTimeout'에 전달하지 마십시오. – SLaks
setTImeout에 문자열을 전달하는 것이 잘못된 이유는 무엇입니까? – oneadvent