JQuery의 Ajax를 사용하여 백그라운드에서 데이터를 추출한 후 이를 전역 변수에 할당하고 싶지만 할당할 수 없습니다. 이유는 무엇입니까?
사실 우리가 사용하는 Ajax는 비동기식 작업이기 때문에 값을 할당할 때 데이터가 추출되지 않았다는 뜻입니다. 물론 할당할 수는 없으므로 으로 변경하기만 하면 됩니다. 동기운전~
방법 1: 먼저 동기화를 설정한 후 Ajax 작업을 수행
//在全局或某个需要的函数内设置Ajax异步为false,也就是同步 $.ajaxSetup({ async :false}); //然后再进行你的Ajax操作 $.post(地址,参数,function(data, status){if(status =="success"){//赋值给全局变量}else{ alert("wrong");}});
방법 2: $.ajax를 직접 사용
$.ajax({ type :"post", url :地址, data :"参数"+参数的值, async :false, success :function(data){//赋值给全局变量;}});
예제 코드: