jQuery serializeArray() 在顶部添加另一个值以传递给 Ajax

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/1726583/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-08-26 12:02:39  来源:igfitidea点击:

jQuery serializeArray() add another value on top for passing to Ajax

jqueryserializearray

提问by Basit

I'm doing the following:

我正在做以下事情:

var data = $(form).serializeArray();
// Now I want to  add another value on this data
data.username = 'this is username';

I want to know how can I add another value after doing serializeArray(). I tried all the things I know, but nothing is getting it to work. any ideas pls.

我想知道如何在执行后添加另一个值serializeArray()。我尝试了所有我知道的事情,但没有任何事情可以让它发挥作用。任何想法请。

回答by Emmanuel Gleizer

var data = $(form).serializeArray();
data.push({name: 'username', value: 'this is username'});

see also: jQuery post() with serialize and extra data

另请参阅:带有序列化和额外数据的 jQuery post()

回答by Lobstrosity

try

尝试

data[data.length] = { name: "username", value: "The Username" };

回答by user1210155

var FormAttr = $('#form_id').serializeArray();

FormAttr.push({name: "Name_Of_Attribute", value:"Value_Of_Attributes"});

回答by Kev

Late to the party, but I personally prefer

聚会迟到,但我个人更喜欢

const data = $(form).serializeArray().concat({
    name: "username", value: "The Username"
});

回答by Josh Pearce

I think it's just

我认为这只是

data['username'] = 'this is a username';