내 Ajax 호출의 경우 xmlhttp 객체를 만들었습니다. 내가 "open"할 때 그것이 열리는 것 같지만 결코 xmlhttp.readyState == 4 && xmlhttp.status == 200
상태가되지 않습니다. window.open
을 사용하여 숨겨진 페이지를 실행하려고 시도했지만 오류가 표시되지 않습니다.XMLHTTP 요청이 xmlhttp.readyState == 4 && xmlhttp.status == 200 상태가되지 않습니다.
이전에는 다른 페이지에서 AJAX를 사용했지만 제대로 작동했습니다. document.getElementById('Approval' + id).innerHTML = 'Loading...';
가 작동하기 때문에 xmlhttp
요청이 열려 있다고 생각 합니다만, xmlhttp.readyState == 4 && xmlhttp.status == 200
상태에 전혀 도착하지 않습니다.
대단히 짧은 시간에 "로드 중 ..."이 표시되도록 디자인했는데 (숨겨진 페이지가 보통 많은 시간이 걸리는 전자 메일을 보내기 때문에 비정상 인 경우), 이전 텍스트가 표시됩니다. 나는 전에 이것을 만나지 않았다. 다음은
는var xmlhttp;
if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
xmlhttp = new XMLHttpRequest();
}
else {// code for IE6, IE5
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
document.getElementById('Approval' + id).innerHTML = xmlhttp.responseText;
//alert(xmlhttp.responseText);
}
else {
document.getElementById('Approval' + id).innerHTML = 'Loading...';
}
}
xmlhttp.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
xmlhttp.setRequestHeader("Content-length", data.length);
xmlhttp.setRequestHeader("Connection", "close");
xmlhttp.open("GET", "AJAX%20pages/UploadDecisionAbsenceRequest.aspx?decision=" + decision + '&position=' + position + '&id=' + id, true);
xmlhttp.send();
//window.open("AJAX%20pages/UploadDecisionAbsenceRequest.aspx?decision=" + decision + '&position=' + position + '&id=' + id,'','width=200, height = 100');
또한 나는 XMLHTTP 요청의 상태를 알고 시도 후 내 코드, 코드 행을 작성하는 것입니다 :
document.getElementById('Approval' + id).innerHTML = "Now (readystate) " + xmlhttp.readystate + " and status " + xmlhttp.status;
나는 지금이었다 가진 모든 (readyState가) 정의되지 않았고 상태 0이고 거기에서 더 이상 가지 않았다.
왜 jQuery를 사용할 수없는 이유는 무엇입니까? –
어떻게 할 수 있습니까? –