有没有办法让 $.ajaxSetup() 的作用域扩展到函数体?我无法让 $.ajaxSetup() 影响函数内的 $.ajax() 调用。这是一个例子:
通过以下代码,函数 foo() 发送的 ajax 请求不包含 ajaxSetup 中指定的 testHeader:
$.ajaxSetup({
headers: {
testHeader: testValue
}
});
function foo(theData) {
$.ajax({
url: testUrl,
data: theData,
type: 'POST',
contentType: 'application/json',
dataType: 'json'
});
}
但是,使用以下代码,testHeader 确实包含在 foo() 发送的 ajax 请求中。
function foo(theData) {
$.ajaxSetup({
headers: {
testHeader: testValue
}
});
$.ajax({
url: testUrl,
data: theData,
type: 'POST',
contentType: 'application/json',
dataType: 'json'
});
}
我认为 ajaxSetup() 应该是全局的,它的范围应该扩展到函数体。我缺少什么?谢谢。
最佳答案
“全局”可能用词不当。
$.ajaxSetup 只会影响当前的 jQuery 对象。如果在其他页面加载jQuery,不会受到影响。
关于javascript - 全局 $.ajaxSetup() 调用不会影响单独函数中的 $.ajax() 调用吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20887584/