심각한 문제에 직면하고 있습니다. Ajax를 사용하여 요청을 보내고 응답을받을 때마다 브라우저가 중단되고로드가 표시되지 않습니다.
하지만 Ajax에서 응답이 검색되면 브라우저와 페이지가 다시 작동하기 시작합니다.
아래는 제가 사용한 코드입니다 .....
function ShowContestStatus(contestID)
{
$("#showContestDetails").html('<div class="loadercontest"><img src="assets/images/loading.gif">Loading Contest....</div>');
$("#RadioGroup1_0, #RadioGroup1_1, #RadioGroup1_2").prop('disabled', true);
$.ajax({
url:"process/processMyContest.php",
type:'POST',
cache:false,
async:false,
data : {act : 'showcontest', cid : contestID },
success:function(result)
{
$("#showContestDetails").html(result);
$("#RadioGroup1_0, #RadioGroup1_1, #RadioGroup1_2").prop('disabled', false);
}
});
}
제발 도와주세요 ... 요청을 보낼 때 다른 웹 사이트에서와 동일한 응답을 받고 싶습니다 .Ajax를 사용하고 페이지가 중단되지 않고 스크롤링과 같은 각 처리가 표시됩니다 ...
그러니 제발 좋은 아이디어를 제안 해주세요 .... 그래서 내가 그것을 제거하고 교수형에 의해 다른 사람에게 영향을 미치고 짜증나게하지 않고 페이지에 대한 내 ajax를 부드럽게 만들 수 있도록 ...
미리 감사드립니다 ... :)
문제는 async:false
... ajax 요청이 동기 적이므로 스크립트 실행은 요청이 완료 될 때까지 기다릴 것입니다.
브라우저는 단일 스레드 실행 패턴 (스크립트를 실행하거나 다시 칠하거나 한 번에 모두가 아닌 사용자 이벤트를 기다림)을 사용하기 때문에 브라우저 탭이 사용자 수신을 중지하므로 중단 된 것처럼 보입니다. )
function ShowContestStatus(contestID) {
$("#showContestDetails").html('<div class="loadercontest"><img src="assets/images/loading.gif">Loading Contest....</div>');
$("#RadioGroup1_0, #RadioGroup1_1, #RadioGroup1_2").prop('disabled', true);
$.ajax({
url: "process/processMyContest.php",
type: 'POST',
cache: false,
//remove async: false,
data: {
act: 'showcontest',
cid: contestID
},
success: function (result) {
$("#showContestDetails").html(result);
$("#RadioGroup1_0, #RadioGroup1_1, #RadioGroup1_2").prop('disabled', false);
}
});
}
기본적으로 모든 요청은 비동기 적으로 전송됩니다 (즉, 기본적으로 true로 설정 됨). 동기 요청이 필요한 경우이 옵션을 false로 설정하십시오. 교차 도메인 요청 및 dataType : "jsonp"요청은 동기 작업을 지원하지 않습니다. 동기식 요청은 브라우저를 일시적으로 잠그고 요청이 활성화 된 동안 모든 작업을 사용 중지 할 수 있습니다. jQuery 1.8부터 jqXHR ($. Deferred)과 함께 async : false 사용은 더 이상 사용되지 않습니다. jqXHR.done () 또는 더 이상 사용되지 않는 jqXHR.success ()와 같은 jqXHR 객체의 해당 메서드 대신 성공 / 오류 / 완료 콜백 옵션을 사용해야합니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다