我必须在同一个视图中插入一个编辑按钮和多个复选框来删除DB中的记录。编辑按钮只适用于第一条记录,复选框只适用于最后一条记录,即使我选中多个选项。如果有编辑按钮或删除复选框,这些功能可以单独使用,而不是一起使用。
@isset($lista)
<table>
<th>Lista degli utenti Staff: </th>
<tr>
<td> Nome </td>
<td> Cognome </td>
<td> Username </td>
<td> Modifica </td>
<td> Elimina </td>
@foreach ($lista as $staff)
<tr>
<td>{{$staff->nome}} </td>
<td> {{$staff->cognome}} </td>
<td> {{$staff->username}} </td>
<td>
{{ Form::open(array( 'route'=> ['modificastaff', $staff->id],'method'=>'post')) }}
{{ Form::submit('Modifica') }}
{{ Form::close() }}
</td>
<td>
{{ Form::open(array( 'route'=> ['eliminastaff'],'method'=>'post')) }}
{{ Form::checkbox('checked[]', $staff->id) }}
</td>
</tr>
@endforeach
{{ Form::submit('Elimina') }}
{{ Form::close() }}
</table>
@endisset
你的第一个表里面的表格是好的。 你打开它,要求 submit
然后关闭它的循环 <tr>
.
您遇到的问题是因为您为您的复选框打开了多个表单,而且它们是 循环表内未关闭. 这意味着你在编辑表单的顶部打开了多个表单,这导致了错误。
要解决这个问题,请修改:
<td>
{{ Form::open(array( 'route'=> ['eliminastaff'],'method'=>'post')) }}
{{ Form::checkbox('checked[]', $staff->id) }}
</td>
</tr>
@endforeach
{{ Form::submit('Elimina') }}
{{ Form::close() }}
对此。
<td>
{{ Form::open(array( 'route'=> ['eliminastaff'],'method'=>'post')) }}
{{ Form::checkbox('checked[]', $staff->id) }}
{{ Form::submit('Elimina') }}
{{ Form::close() }}
</td>
</tr>
@endforeach
如果你想接受多张支票,你将不得不重新设计一下。 但这将解决你所遇到的第1次编辑最后一次删除错误的问题。