Serialize multiple forms together?
-
29-04-2021 - |
質問
Can you serialize multiple forms into one so that only one post or ajax request is made? I have searched around and it is all for submiting each form separently via post/ajax.
解決
When you use the jQuery serialize()
function, it simply turns your form into a string in the format a=1&b=2&c=3
. So you can certainly apply this function to two forms and concatenate the result, with an &
between them, and use the result in your ajax call. You'd want some checks to make sure neither string is empty when you do the concatenation.
他のヒント
If you run $('form').serialize()
on a page with multiple forms, it will correctly serialize all the forms into one string.
To include only certain forms, use $('#form1, #form2').serialize()
I like the answer from Jleagle above.
if you are more specific about the forms , use
$('#detailsform,#levelForm').serialize();
the above line will return a string value. like customId=08071992&cort=01&empId=7777
you can avoid unwanted fields by adding the attribute disabled="disabled"
to the input fields or in other words "disabled" fields won't be get serialized.