我正在尝试将额外的参数附加到每个 ajax 调用的查询字符串
假设原始 url 是: /customer/search?sort=Id
,我希望处理后的 url 看起来像
/customer/search?sort=Id&criteria=abc
这是代码
$.ajaxPrefilter(function (options, originalOptions, jqXHR) {
// Append the initial search criteria
options.url += '&criteria=abc';
});
问题是:一键点击后,url变成:/customer/search?sort=Id&criteria=abc
第二次点击后,网址变为:/customer/search?sort=Id&criteria=abc&criteria=abc
它不断增加
看起来 jQuery ajax 调用使用的是同一个options
对象,所以我添加了一个自定义标志
$.ajaxPrefilter(function (options, originalOptions, jqXHR) {
// Append the initial search criteria
if (!options.processed) {
options.url += '&criteria=abc';
options.processed = true;
}
});
问题是:options.processed
总是undefined
。看起来每个 ajax 调用都使用一个唯一的options
对象。现在我很困惑:)