我有这个复选框,如何在选中该复选框时禁用表格(禁用表格中的所有输入字段)?
<label><input type="checkbox" name="view" value="d">N/A</label>
是否可以使用纯 JavaScript 而不是 jQuery。
这是现在的代码
var elems = document.getElementById('table-id').querySelectorAll('input,select,textarea');
document.getElementById('check').onchange = function () {
if (document.getElementById('check').checked) {
for (var i = 0; i < elems.length; i++) {
elems[i].disabled = true;
}
} else {
for (var i = 0; i < elems.length; i++) {
elems[i].disabled = false;
}
}
}
和表格
<table id='table-id' border="1">
但它显示这样的错误:
Uncaught TypeError: Cannot read property 'querySelectorAll' of null
最佳答案
使用 jQuery,很简单:
$("#tableId").find(":input").prop("disabled", true);
使用Javascript,有点长:
var elems = document.getElementById('tableId').querySelectorAll('input,select,textarea');
for (var i = 0; i < elems.length; i++) {
elems[i].disabled = true;
}
fiddle :http://jsfiddle.net/abhitalks/6s7QL/2/
更新:
添加了您的复选框代码:
document.getElementById('checkboxId').onchange = function () {...
关于javascript - 使用复选框禁用表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23625824/