gpt4 book ai didi

javascript - 可重用的 JS ajax 模式 (jquery)

转载 作者:数据小太阳 更新时间:2023-10-29 05:13:52 27 4
gpt4 key购买 nike

我想知道是否有更好的方法来为 jquery 创建可重用的 ajax 对象。

这是我未经测试的代码。

var sender = {
function ajax(url, type, dataType, callback) {
$.ajax({
url: url,
type: type,
dataType: dataType,
beforeSend: function() {
onStartAjax();
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
callback.failure(XMLHttpRequest, textStatus, errorThrown);
},
success: function(data, textStatus) {
callback.success(data, textStatus);
},
complete: function (XMLHttpRequest, textStatus) {
onEndAjax();
}
});
},
function onStartAjax() {
// show loader
},
function onEndAjax() {
// hide loader
}
};


<script type="text/javascript">
var callback = {
success: function(data, textStatus) {
$('#content').html(data);
},
failure: function(XMLHttpRequest, textStatus, errorThrown) {
alert('Error making AJAX call: ' + XMLHttpRequest.statusText + ' (' + XMLHttpRequest.status + ')');
}
}

sender.ajax(url, type, dataType, callback);

</script>

最佳答案

您可以单独设置您始终拥有的基本选项。

例如,如果你总是在这里使用相同的东西:

    type: type, 
dataType: dataType,

对于那些类型,你可以单独设置它们。

下面是你如何做这类事情:

$.ajaxSetup({
type: "POST",
contentType: "application/json; charset=utf-8",
data: "{}"
});

现在这些都已设置,您可以简化您的个人 ajax 调用。

编辑:

注意:将参数设置为 $.ajax 会覆盖这些默认值。因此,将“数据”预设为一个空的 JSON 字符串是安全且需要的。这样,任何指定数据参数的 $.ajax 调用都将按预期运行,因为不会使用默认值。这有助于避免在已部署站点上难以发现的问题。

关于javascript - 可重用的 JS ajax 模式 (jquery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3121838/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com