jquery "$post" 요청을 동기화하는 방법
저는 오랫동안 이 오류를 검색하여 버그 수정 목록에서 이 오류를 피했지만, 마침내 목록의 끝에 도달했습니다. 마지막으로 유효성 검사가 성공했는지 여부를 나타내는 함수를 true/false로 반환해야 합니다.
Ajax를 사용하여 특정 필드를 이미 DB에 있는 필드와 비교하고 있으며 기본적으로$.post()
메소드는 비동기식으로 작동합니다.
통화 내부의 변수를 설정하는 중입니다.onSuccess
호출 방법이 이로 인해 응답을 받지 못하므로 pageLoad에서 모든 js/jquery가 실패합니다...저는 제가 계속해서 사용할 수 있다면 더 좋습니다.$.post
방법.
jQuery < 1.8
당신이 사용할 것을 제안해도 될까요?$.ajax()
대신에$.post()
훨씬 더 사용자 지정이 가능하기 때문입니다.
전화하시는 경우$.post()
예:
$.post( url, data, success, dataType );
당신은 그것을 그것으로 바꿀 수 있습니다.$.ajax()
동등:
$.ajax({
type: 'POST',
url: url,
data: data,
success: success,
dataType: dataType,
async:false
});
참고하십시오.async:false
말에$.ajax()
매개 변수 개체입니다.
여기에 전체 세부 정보가 있습니다.$.ajax()
매개 변수: jQuery.ajax() – jQuery API 설명서.
jQuery >=1.8 "dllc:false" 폐지 안내
jQuery >=1.8은 http 요청 중 UI를 차단하지 않으므로, 요청이 처리되는 한 사용자 상호 작용을 중지하기 위한 해결 방법을 사용해야 합니다.예:
- 플러그인을 사용합니다.블록 UI;
- 호출하기 전에 수동으로 오버레이 추가
$.ajax()
그리고 나서 AJAX가 그것을 제거할 때..done()
콜백이 호출됩니다.
예를 들어 이 답변을 참조하십시오.
동기식 요청을 원하는 경우 설정합니다.async
에 대한 재산.false
청을 위하여jQuery AJAX 문서 확인
Jquery 문서에서 비동기 옵션을 false로 지정하여 동기화된 Ajax 요청을 가져옵니다.그런 다음 콜백은 마더 기능이 진행되기 전에 일부 데이터를 설정할 수 있습니다.
제안된 대로 코드를 변경할 경우 다음과 같이 표시됩니다.
beforecreate: function(node,targetNode,type,to) {
jQuery.ajax({
url: url,
success: function(result) {
if(result.isOk == false)
alert(result.message);
},
async: false
});
}
$.sys가 비동기성을 설정할 수 있는 유일한 요청 유형이기 때문입니다.
언급URL : https://stackoverflow.com/questions/5821380/how-to-make-a-jquery-post-request-synchronous
'programing' 카테고리의 다른 글
파워셸 마우스를 움직여도 유휴 모드가 방지되지 않습니다. (0) | 2023.09.03 |
---|---|
시간을 변환합니다.문자열 작성 시간 (0) | 2023.09.03 |
MariaDB/MySQL tmp 테이블이 전체 디스크 공간을 사용하고 있습니다. (0) | 2023.09.03 |
jAJAX로 Google 시각화 API 로드 (0) | 2023.09.03 |
휴일과 주말을 제외한 두 날짜 사이의 날짜를 어떻게 계산합니까? (0) | 2023.09.03 |