我的submit.cshtml
是:
<table id="scDetails" class="table">
<thead>
<tr>
<th>Item</th>
<th>IsChecked</th>
<th>Comment</th>
</tr>
</thead>
<tbody>
@Html.EditorFor(m => m.Fbacks)
</tbody>
</table>
EditorTemplate适用于 - @Html.EditorFor(m => m.Fbacks)
(Fbacks.cshtml)
<tr>
<td>@Html.HiddenFor(m => m.Item)
@Html.DisplayFor(m => m.Item)
</td>
<td>@Html.CheckBoxFor(m => m.IsChecked)</td>
<td>@Html.TextBoxFor(m => m.Comment)</td>
</tr>
我需要的是:
当我勾选复选框时,应启用文本框,取消选中时,应禁用文本框。
答案 0 :(得分:2)
$("input[type='checkbox']").on("click", function() {
$(this).parent().next().find("textarea").prop("disabled", ! this.checked);
});
答案 1 :(得分:1)
$('input[type=checkbox]').on('click', function() {
var isChecked = $(this).is(':checked');
$(this).parent().next().find('input[type="text"]').attr('disabled', !isChecked);
});
// OR
$('input[type=checkbox]').on('click', function() {
var isChecked = $(this).is(':checked');
$(this).parent().parent().find('input[type="text"]').attr('disabled', !isChecked);
});
答案 2 :(得分:1)
您应该将事件添加到复选框
$('#Fbacks').click (function ()
{
var thisCheck = $(this);
if (thischeck.is (':checked'))
{
$('#Comment').prop('disabled', true);
}else{
$('#Comment').prop('disabled', false);
}
});
在这种情况下@Html.EditorFor(m => m.Fbacks)
id = 'Fbacks'