Pertanyaan Cara menggunakan fungsi jQuery .serialize dengan elemen bentuk dinamis


Bagaimana cara membuat serial input bentuk dinamis?

<table id="mytable">
<form id="myform">
 <tbody>
   <tr><td><input type="text" name="row0"></td></tr> <!-- dynamically generated -->
   <tr><td><input type="text" name="row1"></td></tr> <!-- dynamically generated -->
   <tr><td><input type="text" name="row2"></td></tr> <!-- dynamically generated -->
   <tr><td><input type="text" name="row3"></td></tr> <!-- dynamically generated -->
 </tbody>
 <tfoot>
   <tr><td><input type="button" id="save" value="SAVE"></td></tr> <!-- static -->
 </tfoot>
</form>
</table>

Saya ingin menggunakan jQuery untuk memuat info dari php

$('#save').click(function(){
   $.ajax({
     type: "POST",
     url: "post.php",
     data: $('#myform').serialize(),
     success: function(msg){
         console.log(msg);
     }
   });
});

Ini tidak akan berfungsi jika baris tidak dibuat secara dinamis, tetapi saya tidak dapat mengetahui cara mengakses atau membuat serial konten dinamis.


5
2017-09-30 20:57


asal


Jawaban:


Serialisasi konten dinamis berfungsi dengan baik seperti yang Anda miliki (karena Anda melakukannya di a click handler, bukan pada beban) ... tetapi Anda harus memiliki valid <form> elemen melilit <table>, seperti ini:

<form id="myform">
<table id="mytable">
 <tbody>
   <tr><td><input type="text" name="row0"></td></tr> <!-- dynamically generated -->
   <tr><td><input type="text" name="row1"></td></tr> <!-- dynamically generated -->
   <tr><td><input type="text" name="row2"></td></tr> <!-- dynamically generated -->
   <tr><td><input type="text" name="row3"></td></tr> <!-- dynamically generated -->
 </tbody>
 <tfoot>
   <tr><td><input type="button" id="save" value="SAVE"></td></tr> <!-- static -->
 </tfoot>
</table>
</form>

Anda bisa mengujinya di sini.


11
2017-09-30 20:59