如何根据复选框的结果隐藏多个表.
<input type="checkbox" name="t_show" value="1" checked="checked" onchange="visible_checkbox(this.id, 't_settings'); update_preview();" id="t_show">
Run Code Online (Sandbox Code Playgroud)
单击此div应该意味着应隐藏具有id t_settings的所有出现的元素.
JavaScript的:
function visible_checkbox(x, y) {
var v = document.getElementById(x).checked;
if(v == 1) {
show(y);
} else {
hide(y);
}
}
Run Code Online (Sandbox Code Playgroud)
多谢你们.
如何根据复选框的结果隐藏多个表.
你是否意识到id是SINGULAR并且你不能拥有多个具有相同id的元素?
显示或隐藏元素就像将显示设置为无一样简单.
function visible_checkbox(checkboxId, tableId) {
var isChecked = document.getElementById(checkboxId).checked;
var showHide = isChecked ?"":"none";
document.getElementById(tableId).style.display = showHide;
}
Run Code Online (Sandbox Code Playgroud)
我个人不会传递id,我只是传递对象,因为没有额外的查找:
onchange="visible_checkbox(this, 't_settings');
Run Code Online (Sandbox Code Playgroud)
JS代码
function visible_checkbox(checkbox, tableId) {
var isChecked = checkbox.checked;
var showHide = isChecked ?"":"none";
document.getElementById(tableId).style.display = showHide;
}
Run Code Online (Sandbox Code Playgroud)
正如评论所述,如何为多个ID做到这一点?
你可以拆分和循环:
onchange="visible_checkbox(this, 't1,t2,t3');
Run Code Online (Sandbox Code Playgroud)
JS代码
function visible_checkbox(checkbox, tableId) {
var isChecked = checkbox.checked;
var showHide = isChecked ?"":"none";
var ids = tableId.split(",");
for(var i=0;i<ids.length;i++){
document.getElementById(ids[i]).style.display = showHide;
}
}
Run Code Online (Sandbox Code Playgroud)
或者你可以使用多个参数.
你可以循环参数:
onchange="visible_checkbox(this, 't1', 't2', 't3');
Run Code Online (Sandbox Code Playgroud)
JS代码
function visible_checkbox(checkbox) {
var isChecked = checkbox.checked;
var showHide = isChecked ?"":"none";
for(var i=1;i<arguments.length;i++){
document.getElementById(arguments[i]).style.display = showHide;
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4760 次 |
| 最近记录: |