0
我有我想要發送給PHP控制器的複選框(全部具有相同的'name'屬性)。這裏是我的標記的簡短片段:使用jQuery和PHP序列化複選框時出現問題
<script type="text/javascript">
$(document).ready(function(){
$(".someButton").click(function(){
$.post("my_controller.php",$("#userForm").serialize());
});
});
</script>
<?php
echo '<form id="userForm">';
foreach($users as $user)
{
echo '<input name="user_id" value="'.$user->id.'">';
}
echo '</form>';
?>
我再想我的控制器發送這些值作爲一個統一的陣列,以一種模式,它可以然後做一個foreach語句。控制器邏輯應該(我認爲)是這樣的:
foreach($_POST['user_id'] as $user_id)
{
$user_array[] = $user_id;
}
$this->model->method($user_array);
,但我一直喜歡把自己的錯誤「提供的foreach無效參數()」,因爲我不認爲它越來越除第一任何其他值。我哪裏錯了?
我需要更改我的jQuery調用嗎?我發送表單的唯一方法是'jQuery.post()' – hohner
不,您不需要更改jQuery代碼; serialize()將會使用它。 – arnaud576875