在 Laravel 中遍历复选框列表,即使未选中

Iterate throw checkbox list, even if not checked, in Laravel

我有 table 个项目,如果用户选择了一个项目,我需要知道有多少单位分配给了这个项目。所以我创建了一个复选框列表,其中包含所选项目的 ID,另一个用于单位。

<td>{{$item->name}}</td>
<td>{{Form::checkbox('itemchks[]', $item->id)}}</td>
<td>{{Form::text('units[]','0')}}</td>

问题是,除非用户检查所有项目,否则我们会得到 2 个不同大小的列表。 对于ex,选择3个项目并为它们分配一些单位值时,Itemchks带有这些ID

["4","15","23"]

但单位列表 returns

["15","0","18","0","0","0","0","0","20"]

所以我不能确切地知道每个 id 及其对应的单位。

我正在使用 laravel 4.2

任何想法将不胜感激。

您可以使用 $item->id:

自行设置您的 units[] 数组中的键,而不是让浏览器设置该键
<td>{{$item->name}}</td>
<td>{{Form::checkbox('itemchks[]', $item->id)}}</td>
<td>{{Form::text('units['.$item->id.']','0')}}</td>