我有这个JavaScript来启用/禁用更新按钮。我需要当stats id检查到EnableUpdate按钮。此脚本只在第一行起作用,其他行不起作用。如何实现foreach行记录?
JS代码:
$(document).ready(function(){
$('#status').click(function () {
var inputValue = $(this).attr("value");
$('#btnApprove').prop('disabled', $('#status:checked').length == 0);
});
});
HTML代码:
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.MessageID)
</td>
<td>
@Html.DisplayFor(modelItem => item.Message)
</td>
<th>
@Html.DisplayFor(modelItem => item.EmptyMessage)
</th>
<td>
@Convert.ToDateTime(item.Date).ToString("dd/MM/yyyy")
</td>
<td>
@Html.CheckBox("status")
</td>
<td>
<input type="submit" name="Update" id="btnApprove" value="Update" class="btn btn-primary" onclick="location.href='@Url.Action("UpdMessages", "Home", new { MessageID = @Html.DisplayFor(modelItem => item.MessageID)})'" />
</td>
</tr>
}
这是视图:
您不能使用id来跟踪它,因为id是唯一的,可以在dom中使用一次。您必须对状态checkbox和button都使用动态类,显示每当一个状态得到check时,获取两者的动态类,或者只是传递参数到change函数,然后使其禁用。如果不需要任何参数,请尝试使用data-attribute添加动态类。