Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Use jQuery to attach JSON to a form and submit it

Tags:

json

jquery

forms

Given this empty form, how would I use jQuery to attach a JSON object as params and then submit it? The form should standard submit, not AJAX.

<form action="/comments" method="post" id="comments_form">
  <submit>Post</submit>
</form>
like image 948
Gavin Avatar asked Nov 01 '09 11:11

Gavin


1 Answers

Assuming your JSON object is the myData variable (and you make JSON.stringify available):

$('#comment_form').submit(function() {
    var $hidden = $("<input type='hidden' name='myData'/>");
    $hidden.val(JSON.stringify(myData));
    $(this).append($hidden);
    return true;
});

The above code creates a hidden form input on the fly and gives its value the string representation of your JSON object, then appends it to the form right before submission.

like image 120
karim79 Avatar answered Nov 15 '22 04:11

karim79