>  기사  >  웹 프론트엔드  >  jQuery ajax는 async가 false일 때 동기화 실패 문제를 해결합니다.

jQuery ajax는 async가 false일 때 동기화 실패 문제를 해결합니다.

高洛峰
高洛峰원래의
2016-12-06 14:51:191095검색

jQuery의 ajax에서는 async가 false인 경우 동기화 작업이 실패합니다. 해결책, jqueryasync

최근 프로젝트 작업을 할 때 jQuery의 ajax 문제가 발생했습니다. async가 false인 경우, 온라인에서 검색하여 해결 방법을 찾았습니다.

실패 시 코드:

$.ajax({
       url : 'your url',
       data:{name:value},
       cache : false,
       async : true,
       type : "POST",
       dataType : 'json/xml/html',
       success : function (result){
         return result;
       }
     });

해결책:

var ret = null;
$.ajax({
        url : 'your url',
        data:{name:value},
        cache : false,
        async : true,
        type : "POST",
        dataType : 'json/xml/html',
        success : function (result){
          ret=result;
        }
      });
return ret;

참고:
성공 콜백 함수에서 직접 반환하지 마세요. 구체적인 이유는 나중에 조사하겠습니다! !

동기 제출을 위한 $ajax() 설정이 잘못되었습니다. 코드는 다음과 같습니다. Async: "false"가 설정되었지만 여전히 비동기적으로 제출됩니다.

원래 목적 ajax는 비동기 작업을 수행하는 것이며 최신 jQuery 버전에서는 async 매개 변수가 더 이상 사용되지 않습니다.

서버 상호 작용에만 ajax를 사용하고 비동기 새로 고침 효과가 필요하지 않은 경우 콜백을 사용할 수 있습니다. function.

jquery $ajax 함수의 async: "false"가 작동하지 않습니다.

"false" 큰따옴표를 추가하면 문자열이 됩니다. . 빈 문자열이 아닌 경우 true입니다.

큰따옴표를 제거하세요.


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.