我有一个$ .getJSON调用,它通过进行Web API调用来填充集合:
$.getJSON("/api/rating", self.ratings);
如果我想添加$ .ajax中的一些选项,例如beforeSend,data,success等,我将如何重写?
编辑:我已经尝试过这两种方法,并且没有任何警报被点击:
$.getJSON("/api/rating")
.beforeSend(function (xhr) {
alert("before");
$('#divLoading').addClass('ajaxRefresh');
xhr.setRequestHeader('X-Client', 'jQuery');
})
.success(function (result) {
alert(result);
self.ratings = result;
})
.complete(function (result) {
alert("complete");
$('#divLoading').removeClass('ajaxRefresh');;
})
.error(function () {
alert("error");
});
$.getJSON("/api/rating", self.ratings)
.beforeSend(function (xhr) {
alert("before");
$('#divLoading').addClass('ajaxRefresh');
xhr.setRequestHeader('X-Client', 'jQuery');
})
.success(function (result) {
alert(result);
self.ratings = result;
})
.complete(function (result) {
alert("complete");
$('#divLoading').removeClass('ajaxRefresh');;
})
.error(function () {
alert("error");
});
答案 0 :(得分:1)
$。getJSON是:
的简写$.ajax({
dataType: "json",
url: url,
data: data,
success: success
});
所以你的样本可以翻译成:
$.ajax({
dataType: "json",
url: "/api/rating",
data: self.ratings,
beforeSend: beforeSend,
success: function (json) {
// handle json
}
});
等
答案 1 :(得分:1)
$.getJSON(<url>,<data>,<callback>)
.success(function() {
})
.error(function () {
});
修改强>
.success()
和.error()
已被弃用,因此应使用.done()
和.fail()
。