>백엔드 개발 >PHP 문제 >ajax가 PHP 반환 값을 얻을 수 없습니다

ajax가 PHP 반환 값을 얻을 수 없습니다

angryTom
angryTom원래의
2019-10-17 09:20:524765검색

ajax가 PHP 반환 값을 얻을 수 없습니다

Ajax가 PHP 반환 값을 얻을 수 없는 문제에 대한 해결책:

1 먼저 Ajax가 결과를 직접 반환할 수 없는지 확인하세요.

/*常见错误示例  直接在 ajax 里面return 结果*/

 function demo(){
     $.ajax({
         url : 'test.do',
         type : "post",
         data : {},
         async : false,
         success : function(data) {             return 2;
         }
     });
 }/* 结果  无返回 */

2. 그런 다음 ajax가 중첩된 함수에서 데이터를 반환하지 않는지 확인하세요.

/**
 * (1)同步调用 (2)且在ajax对全局变量进行设值 (3)ajax函数外将变量return
 * 结果:返回 2。成功获取返回值
 * 成功原因:先执行result = 2;再往下执行return result;
 */
function demo1(){
    var result = 1;
    $.ajax({
        url : 'test.do',
        type : "post",
        data : {},
        async : false,
        success : function(data) {
            result = 2;
        }
    });
    return result;  //2
}

3. 정상적으로 실행될 수 있습니다. 그러나 ajax를 동기식 요청으로 변경하면 차단이 발생하므로 비동기식 요청이 필요합니다.

/**
  * 添加async:true.即修改为异步
 * 结果以callback的形式回调
  */
 function demo1(params,callback){
    var result = 1;
     $.ajax({
        url : 'test.do',
         type : "post",
         data : {"params ":params },
         async : true,
         success : function(data) {
             result = 2;
             callback(result);
         }
     });
 }    

demo1("Value",function(rs){
   //do someting
})

참고: ajax가 요청한 PHP에는 에코 또는 인쇄 데이터가 필요합니다. 그렇지 않으면 ajax가 데이터를 얻을 수 없습니다.

더 많은 PHP 관련 지식을 보려면 PHP 중국어 웹사이트를 방문하세요!

위 내용은 ajax가 PHP 반환 값을 얻을 수 없습니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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