小编典典
重新阅读一些在线文档后,我决定在$ .ajax上坚持使用$ .post。
$ .ajax方法的数据参数与$ .post方法的数据有所不同,不确定到底是什么,但是有所不同。
我想要使用$ .ajax的唯一原因是因为我希望能够处理事件,却没有意识到我可以使用$ .post做到这一点。
这就是我最终得到的
function GetSearchItems() {
var url = '@Url.Action("GetShopSearchResults", "Shop", New With {.area = "Shop"})';
var data = $("#ShopPane").serialize();
// Clear container
$('#shopResultsContainer').html('');
// Retrieve data from action method
var jqxhr = $.post(url, data);
// Handle results
jqxhr.success(function(result) {
//alert("ajax success");
$('#shopResultsContainer').html(result.ViewMarkup);
});
jqxhr.error(function() {
//alert("ajax error");
});
jqxhr.complete(function() {
//alert("ajax complete");
});
// Show results container
$("#shopResultsContainer").slideDown('slow');
}
jQuery 3.x
从jQuery
3.0开始,删除了jqXHR.success(),jqXHR.error()和jqXHR.complete()回调方法。您可以改用jqXHR.done(),jqXHR.fail()和jqXHR.always()。
var jqxhr = $.post(url, data);
// Handle results
jqxhr.done(function(result) {
//alert("ajax success");
});
jqxhr.fail(function() {
//alert("ajax error");
});
jqxhr.always(function() {
//alert("ajax complete");
});
2020-07-26