我正在使用一个表,每行包含一个复选框,而我提交时我希望禁用未选中的行,这就是我尝试过的方法,我创建了一个表和行,其中包含已检查的输入类型,如果未选中输入类型意味着我想要禁用该行,以便当我在mvc中检索时,我可以获得详细信息
<table id="subjectTable">
<tbody><tr><input type='checkbox' name='subjectcheck' /></tr></tbody>
</table>
$("input:not(:checked)").each(function () {
$(this).closest('tr').attr("disabled", "true");
});
这就是我尝试过的任何帮助
答案 0 :(得分:1)
要删除未选中的tr
的父tr,请尝试.parent()
和.remove()
,如下所示:
$("input:not(:checked)").each(function () {
$(this).parent('tr').remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="subjectTable">
<tbody>
<tr>
<input type='checkbox' name='subjectcheck'/>
</tr>
</tbody>
</table>
答案 1 :(得分:1)
如果您只想删除<tr>
,则可以使用jQuery方法.closest()
和.remove()
:
使用$('input:not(:checked)')
用<tr>
查找最接近的.closest('tr')
使用.remove()
PS:请记住,<td>
内必须有<tr>
,否则<input>
将被放置在<table>
之外。
$('button').on('click', function(){
$('input:not(:checked)').closest('tr').remove();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="subjectTable">
<tbody>
<tr><td><input type='checkbox' name='subjectcheck' /></td></tr>
</tbody>
</table>
<button>Emulate submit !</button>