2017-07-17 202 views
1

我有以下代码

var values = {'value1' : 'one','value2' : 'two'}; 

... 
... 
submitHandler:function(form,e){ 
$.ajax({ 
    type: 'POST', 
    url: '', 
    data: $(form).serialize(), 
}); 
} 

append method试图像下面

var formData = $(form).serialize(); 
     var value = {'test' : 'test'}; 
     formData.append(value); 
     $.ajax({ 
     url : '', 
     type : 'post', 
     dataType : 'json', 
     data : formData, 
     ..... 

但它显示追加不是一个函数。 任何帮助,将不胜感激......!

+0

目前还不清楚你想在这里做什么。 'serialize()'创建一个form-url-encoded的字符串,其中'FormData'是表单值的集合,'value'是一个对象...?你期待什么输出? –

+0

哦..!然后我想创建一个包含表单数据和值对象的json对象。对不起,我认为serialize会将表单数据转换为对象。 –

回答

1

Serialize()将返回查询字符串,因此使用,

formData+='&test=test'; 

代码,

var formData = $(form).serialize(); // its a string 
formData+='&test=test'; // append in string 
$.ajax({ 
    url : '', 
    type : 'post', 
    dataType : 'json', 
    data : formData, 
    ..... 

而且在对象使用

formData['test']='test'; 

代码附加价值,

var formData = {'value1' : 'one','value2' : 'two'}; // its an object 
formData['test']='test'; 
$.ajax({ 
    url : '', 
    type : 'post', 
    dataType : 'json', 
    data : formData, 
    .....