【发布时间】:2014-06-11 05:25:19
【问题描述】:
我正在尝试在每个 ajax 发布请求中发送默认数据,但是使用下面的代码,我正在为所有请求发送数据。请提出建议。
$.ajaxSetup({
data: {
at: $('#at').attr('value'),
},
});
【问题讨论】:
标签: javascript jquery ajax http-post
我正在尝试在每个 ajax 发布请求中发送默认数据,但是使用下面的代码,我正在为所有请求发送数据。请提出建议。
$.ajaxSetup({
data: {
at: $('#at').attr('value'),
},
});
【问题讨论】:
标签: javascript jquery ajax http-post
我想你可以试试下面。还以为没试过运行呢。
使用“beforeSetup”设置如下的ajax
$.ajaxSetup({
beforeSend: myFunc
});
在“myFunc”函数中检查是否为post请求,然后设置数据。
更新:这将起作用!
$.ajaxSetup({
beforeSend: function(xhr, settings) {
if (settings.type == 'POST') {
if(settings.data == null || settings.data == '' || settings.data == undefined) {
settings.data = "?value=test";
} else {
settings.data = settings.data + "&value=test";
}
}
}
});
【讨论】:
您可以注册一个全局 AJAX 事件处理程序,例如 .ajaxSend() 并检查请求类型,例如
$(document).ajaxSend(function(event, jqxhr, settings) {
if (settings.type == 'POST' && !settings.data) {
settings.data = $.param({at: $('#at').attr('value')});
}
});
【讨论】: