我在laravel 5.2中发表了这样的观点:
<table class="table table-condensed table-bordered table-hover">
<tr>
<th>Report</th>
<th>Type</th>
<th>Date</th>
</tr>
<?php $index = 0; ?>
@foreach($tableContent as $data)
<?php $index++; ?>
<tr>
<td><input type="checkbox" name="reports-[{{$data->id}}]" id="{{$data->id}}" >{{$data->title}}</input></td>
<td><b>{{$data->report_type}}</b></td>
<td>{{$data->created_at}}</td>
</tr>
@endforeach
</table>
然后我想在我的控制器中获取已选中复选框的ID。我试过使用这些代码:
console.log($("input[name=reports-1]").attr("id"));
console.log($("input[name=reports-1]").val());
但那些是未定义的...有没有办法获取这些复选框的ID .. ??在此先感谢:)
我也试过这个:
console.log($("input[name=reports-1]").map(function()
{
return this.id;
}));
但它返回一个对象,而不是复选框ID
答案 0 :(得分:2)
看看你的代码。 name="reports-[{{$data->id}}]"
应替换为name="reports-{{$data->id}}"
。在复选框输入标记中的名称值中,它包含[]
。但是,[]
中没有console.log
。当然,它将返回undefined,因为它与复选框输入标记中的任何名称值都不匹配。