jquery .serializeArray(); 在顶部添加另一个值以传递给ajax

Bas*_*sit 26 forms arrays jquery object extend

我正在做以下

var data = $(form).serializeArray();
// now i want to  add another value on this data
data.username = 'this is username';
Run Code Online (Sandbox Code Playgroud)

我想知道如何在执行serializeArray()之后添加另一个值,我尝试了所有我知道的事情,但没有任何东西可以使它工作.任何想法请.

Emm*_*zer 46

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

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


Lob*_*ity 37

尝试

data[data.length] = { name: "username", value: "The Username" };
Run Code Online (Sandbox Code Playgroud)


小智 6

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

FormAttr.push({name: "Name_Of_Attribute", value:"Value_Of_Attributes"});
Run Code Online (Sandbox Code Playgroud)


Kev*_*Kev 5

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

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