【发布时间】:2018-10-05 13:00:12
【问题描述】:
我有一个动态表,其中的行数据使用 foreach 方法显示。 我想在更改选择框选项时获取隐藏输入字段的值。 这是我的代码,
@foreach($sCForms as $sCForm)
<tr>
<td>{!! $sCForm->Description !!}</td>
<td style="display: none;"><input type="hidden" class="hidden"
value="{{$sCForm->id}}" id="hidden"></td>
<td class="demo">
<select name="assigned_to" id="assigned_to" class="demo form-control
required" style="width: 90%;" onchange="changeassigned()">
<option value="">--Select user--</option>
@foreach($users as $user)
<option value="{{$user->id}}">
{{$user->first_name}} {{$user->last_name}}
</option>
@endforeach
</select>
</td>
</tr>
@endforeach
我的功能:
function changeassigned()
{
var id = $('#assigned_to').val();
var form_id = $('.demo').parent().parent().find('input').val();
alert(form_id);
}
我对这段代码的问题是我只得到第一行隐藏字段的值。
获取每行隐藏字段值的最佳方法是什么?
【问题讨论】:
-
除非你 foreach 只返回 1 个循环,否则你将拥有多个具有相同 ID 的元素,这是不行的。 ID 应该始终是唯一的。第二次尝试使用
changeassigned(this)然后function changeassigned(obj) { var id = $(obj).val();