gpt4 book ai didi

jquery - 如何在 jQuery ajax beforeSend 的 settings.data 中添加一个对象

转载 作者:行者123 更新时间:2023-12-01 01:02:34 24 4
gpt4 key购买 nike

我绑定(bind)到 beforeSend 的 ajax 表单提交:

我的函数如下所示:

submitStuff : function(e, xhr, settings) {

settings.data = {
invitation : {
emails : me.returnsArrayX(),
bucket2 : me.returnsArrayY(),
bucket3 : me.returnsArrayZ()
}
}

}

当我像这样手动提交到服务器时,这是有效的:

    $.ajax({
type: 'POST',
url: '/myurl',
dataType: 'json',
data: {
invitation : {
emails : me.returnsArrayX(),
bucket2 : me.returnsArrayY(),
bucket3 : me.returnsArrayZ()
}
}
});

但是由于我使用的是Rails UJS,所以我想使用内置的表单提交器(数据远程)。为什么settings.data在上面不起作用?我是否需要将对象转换为数组或其他内容?

谢谢

最佳答案

processData设置为false,然后您可以简单地在beforeSend中使用对象:

$.ajax("/", {
beforeSend: function(xhr, settings) {
settings.data.key2 = "value2";
settings.data.key3 = {
more: "values",
like: "this"
};

//Encode at end
settings.data = jQuery.param(settings.data, false);
},
data: {
key: "value"
},
processData: false,
type: "POST"
}​);​

关于jquery - 如何在 jQuery ajax beforeSend 的 settings.data 中添加一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11731460/

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