2013-04-11 3 views
1
window.MyCallback = function (data) { 
    console.log(data); 
}; 

$(document).ready(function() { 

    $.ajax({ 
      type: 'GET', 
      url: 'http://xxx.xxx.xxx.xx/MyService/Service.svc/MyMethod', 
      contentType: 'application/jsonp', 
      crossdomain: true, 
      dataType: "jsonp", 
      data: { 'username': 'Jack' }, 
      crossDomain: true, 
      jsonpCallback: 'MyCallback', 
      success: function (txt) { 
       console.log(txt); 
      }, 
      error: function (xhr, status, err) { 
       console.log(status, err); 
      } 
    }); 
}); 

호출되지 콜백 다음 "MyCallback"함수를 호출 들어 MyCallback was not called.jQuery를 아약스 요청 오류 : 난 항상 오류 얻을

답변

0
$.ajax({ 
    type: "GET", 
    dataType: "jsonp", 
    contentType: "application/javascript", 
    data: { 'username': 'Jack' }, 
    async: false, 
    url: 'http://xxx.xxx.xxx.xx/MyService/Service.svc/MyMethod', 
    success: function (jsonData) { 
     console.log(jsonData); 
    }, 
    error: function (request, textStatus, errorThrown) { 
     console.log(request.responseText); 
     console.log(textStatus); 
     console.log(errorThrown); 
    } 
}); 
+0

이 추가 되었습니까? – byJeevan

-1

, 당신의 URL이,

url: 'http://xxx.xxx.xxx.xx/MyService/Service.svc/MyMethod?callback=? 

해야하며, 서버는 반환해야 아약스 응답

return "MyCallback(your data here)" 
+0

그와 같은 문자열에 코딩을 추천하지 않을 것입니다. 'crossdomain : true'가 추가되지 않았기 때문에 – Herbert

1

왜 이렇게 좋지 않습니까?

var mycallback = function (data) { 
    console.log("callback", data); 
}; 

$(document).ready(function() { 

    $.ajax({ 
     type: 'GET', 
     url: 'https://graph.facebook.com/sagish', 
     contentType: 'application/jsonp', 
     dataType: "jsonp", 
     data: { 'username': 'Jack' }, 
     crossDomain: true, 
     success: mycallback, 
     error: function (xhr, status, err) { 
      console.log(status, err); 
     } 
    }); 
});