gpt4 book ai didi

javascript - $.ajaxSetup 全局数据不在加载函数中合并

转载 作者:行者123 更新时间:2023-11-29 18:31:25 24 4
gpt4 key购买 nike

我想为我的所有 ajax 请求设置一个全局数据参数

$.ajaxSetup({
data: {hash : "12345"}
});

设置后我调用:

var myData = {
name : "John",
age : "28"
}

$.get(url, myData, function(data){
...
});

这工作正常并添加所有 3 个参数(哈希、名称、年龄)以请求数据但是当我调用 load 函数而不是 get 时,它不起作用,我只得到 2 个参数(姓名、年龄):

$("#my_div").load(url, myData, function(data){
...
});

谁能告诉我为什么它对加载功能不起作用?我的应用程序中有很多加载函数的用法,我不想在获取时更改加载

谢谢你的每一个提示!

最佳答案

这可以被认为是 jQuery 中的一个错误;或者至少,他们应该接受他们的 AJAX 方法之间的接口(interface)不一致。

解决此问题的唯一方法是使用 jQuery.extend 将默认 data 与您提供的 data 合并:

jQuery.extend(myData, jQuery.ajaxSettings);

在提出请求之前。

这是一个错误:

加载 convertsdata 对象传递到底层 jQuery.ajax 方法中,其中 get doesn't

因此,当ajaxExtend构建data对象时,在load场景中,data参数设置为字符串,而with get data 对象与 jQuery.ajaxSettings合并

关于javascript - $.ajaxSetup 全局数据不在加载函数中合并,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7805854/

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