我在一个 PHP 循环中填充了多个表单,并用<form id='X'>
它们来区分它们在 HTML 中看起来像这样:
<form id='34' class='customer_contact' name='customercontact' method='post' action='customerUpdate.php'>
Förnamn: <br /><input type='text' name='contact_firstname' class='textbox' value='text....'>
Efternamn: <br /><input type='text' name='contact_lastname' class='textbox' value='text....'>
Telefonnummer: <br /><input type='text' name='contact_phone' class='textbox' value='text....'>
Mobiltelefon: <br /><input type='text' name='contact_cellphone' class='textbox' value='text....'>
E-mail: <br /><input type='text' name='contact_email' class='textbox' value='text....'>
<select name='isActive'>
<option value="0" selected>Inaktiv</option>
<option value="1">Aktiv</option>
</select>
</form>
我尝试使用以下代码对它们进行序列化:
<script type="text/javascript">
$(document).ready(function() {
$('#customer_contact_save').live('click', function(e){
e.preventDefault();
$.each($('form.customer_contact'), function(index) {
var sData = $(this).serialize();
$.ajax({
type: "POST",
url: "updateCustomer.php",
data: sData,
success: function(someMessageFromPhp) {
alert(someMessageFromPhp);
}
});
});
});
});
(感谢 Zagor23 在 SO 上的代码)
但是我的POST
数据是空的(我正在使用 FireBug 来查看正在发送的内容)。
我尝试添加console.log(sData);
脚本,但 FireBug 返回:(an empty string)
并且 phpvar_dump($_POST);
也是空的..
有人知道出了什么问题吗?