【发布时间】:2015-11-11 16:21:07
【问题描述】:
我有以下
<form class="form-inline" role="form">
<div class="col-xs-3">
<div class="pic-container">
<label>
<span><input type="checkbox" name="discounting" onchange='handleChange(this);' id='check11' value="">ciao</span><br>
</label>
</div>
</div>
<div class="col-xs-3">
<div class="pic-container">
<label>
<span><input type="checkbox" name="discounting" onchange='handleChange(this);' id='check21' value="">hola</span><br>
</label>
<label>
<span><input type="checkbox" name="discounting" onchange='handleChange(this);' id='check21' value="">hola</span><br>
</label>
<label>
<span><input type="checkbox" name="discounting" onchange='handleChange(this);' id='check21' value="">hola</span><br>
</label>
<label>
<span><input type="checkbox" name="discounting" onchange='handleChange(this);' id='check21' value="">hola</span><br>
</label>
<label>
<span><input type="checkbox" name="discounting" onchange='handleChange(this);' id='check21' value="">hola</span><br>
</label>
<label>
<span><input type="checkbox" name="discounting" onchange='handleChange(this);' id='check21' value="">hola</span><br>
</label>
</div>
</div>
</form>
通过单击第一个复选框,ID 为“check21”的第二个 div 中的所有复选框都会自动被选中。
<script>
function handleChange(cb) {
if(cb.checked == true) {
document.getElementById("check21").checked = true;
alert('eyaicecold');
} else {
alert('Message 2');
var x = document.getElementById("check21").disabled= false;
}
}
</script>
我使用了以下脚本,但仅适用于第一个脚本。我想使用 id,因为名称和值将用于通过表单发送 sql 请求。
【问题讨论】:
-
具有相同 ID 的多个元素是无效的 HTML。
-
@Patrick2607 或姓名。具有讽刺意味的是,OP 已经在这样做了。
-
@Siguza 他在他的 DOM 中使用相同 ID 的多个实例,这不是有效的 HTML 并且会导致冲突,我没有回答他的问题,但建议他应该使用类,如果他想启动多个具有相同选择器的实例。
-
var test = document.querySelectorAll('input[type="checkbox"])'); -
@Patrick2607 无需教我基本的 HTML,我只是说在这种情况下名称与类差不多,特别是因为他的所有复选框都已经设置了
name="discounting"。
标签: javascript html twitter-bootstrap checkbox