Deepak M
Deepak M

Reputation: 849

How to add json object with $(form).serialize()?

I have the following code

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

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

I tried with append method like below

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

But it shows append is not a function. Any help would be appreciated..!

Upvotes: 1

Views: 2652

Answers (1)

Rohan Kumar
Rohan Kumar

Reputation: 40639

Serialize() will return a query string so use,

formData+='&test=test';

Code,

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

And to append value in an object use

formData['test']='test';

Code,

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

Upvotes: 2

Related Questions