我很高兴用对象编写javascript。现在我试图做一个ajaxcall并有一个回调函数,但我可以在ajax调用中达到回调函数。
这是代码,我该如何调用回调函数?
function smarttalkObj() {
this.base_url = 'http://';
this.getPts = function() {
$.ajax({
url: this.base_url + 'getPTS',
dataType: "jsonp",
jsonp : "callback",
jsonpCallback: "this.callback_pts",
contentType: 'application/x-javascript'
});
}
}
this.callback_pts = function(data) {
console.log(data);
}
}
smarttalk = new smarttalkObj();
smarttalk.getPts();
答案 0 :(得分:3)
ajax方法可以在设置中收到成功和错误回调函数。像这样:
$.ajax({
url: this.base_url + 'getPTS',
dataType: "jsonp",
jsonp : "callback",
contentType: 'application/x-javascript',
success: function(data, textStatus, jqXHR){
console.log(data);
// your callback function here
},
error: function(jqXHR, textStatus, errorThrown){
// callback in case of error
}
});
答案 1 :(得分:1)
添加success field
:
success: function(data)
{
// put code here
}
对于你的例子:
$.ajax({
url: this.base_url + 'getPTS',
dataType: "jsonp",
jsonp : "callback",
jsonpCallback: "this.callback_pts",
contentType: 'application/x-javascript',
success: function(data)
{
// put code here
}
});
您也可以使用单独的功能:
$.ajax({
url: this.base_url + 'getPTS',
dataType: "jsonp",
jsonp : "callback",
jsonpCallback: "this.callback_pts",
contentType: 'application/x-javascript',
success: getCallback
});
function getCallback (data)
{
// put code here
}