<button id="ab"> 测试 </button>
<script>
$(function(){
$("#ab").click(function(){
$.ajax({ url: "data.js",
dataType: "jsonp",
data: { msg : "Hello" },
success: function() {
alert("success");
},
complete: function(xhr, status) {
//alert(xhr.responseText);
},
error: function(xhr, textStatus, errorThrown){
alert('request failed'+ textStatus);
}
});
});
});
</script>
即使请求成功了, 设置success的callback始终没有调用
请问ajax的方法这么用是不是不对? (complete对应的callback会调用)
看了一下 jQuery(1.3)的代码 其中
ajax 函数这一段看不懂 (大概4975行)
ajax: function(){
...
//这里为什么又创建一个function success, 直接s.success.call不就行了吗?
function success() {
if ( s.success ) {
s.success.call( callbackContext, data, status, xhr );
}
// Fire the global callback
if ( s.global ) {
trigger( "ajaxSuccess", [xhr, s] );
}
}
...
}
--
修改:Atie FROM 211.99.222.*
FROM 211.99.222.*