是的,你可以修改它,签名beforeSend is actually(在 jQuery 1.4+ 中):
beforeSend(XMLHttpRequest, settings)
尽管文档刚刚beforeSend(XMLHttpRequest)
, 你可以在这里看到它是如何被调用的, where s是设置对象:
if ( s.beforeSend && s.beforeSend.call(s.context, xhr, s) === false ) {
So, you can修改data
之前的争论(请注意,这是already此时为一个字符串,即使您传入了一个对象)。修改它的示例如下所示:
$.ajax({
//options...
beforeSend: function(xhr, s) {
s.data += "&newProp=newValue";
}
});
如果有帮助,相同的签名适用于.ajaxSend()全局处理程序(其中does有正确的文档显示它),就像这样:
$(document).ajaxSend(function(xhr, s) {
s.data += "&newProp=newValue";
});