【发布时间】:2016-09-06 07:50:52
【问题描述】:
您好,我有多个类似的复选框。我在复选框上应用 javascript 以显示隐藏字段。我创建了一个适用于单个复选框的 js 代码,我想应用一个适用于所有复选框的代码。
<div class="row">
<div class="col-md-12">
<div class="form-group">
<div class="col-md-2">
<label>Practical Course:</label>
<input id="checkbox" type="checkbox">
</div>
<div class="col-md-4" id="box" style="display: none;">
<input type="number" name="practical1" class="form-control">
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-md-12">
<div class="form-group">
<div class="col-md-2">
<label>Practical Course:</label>
<input id="checkbox" type="checkbox">
</div>
<div class="col-md-4" id="box" style="display: none;">
<input type="number" name="practical2" class="form-control">
</div>
</div>
</div>
</div>
JS 代码:-
var checkbox = document.getElementById('checkbox');
var box = document.getElementById('box');
checkbox.onclick = function() {
console.log(this);
if (this.checked) {
box.style['display'] = 'block';
} else {
box.style['display'] = 'none';
}
};
现在问题是我可以为所有复选框制作单独的 javascript,但其中将包含大量 js 代码,我希望单个 javascript 函数可以在单击时从每个复选框中取消隐藏元素。单个 js 代码应该适用于所有复选框。请提供一种使用纯 javascript 或 jquery 的方法。
【问题讨论】:
-
@yoo 你能详细说明一下吗
-
id必须是唯一的。请改用class。 -
@RejithRKrishnan 我知道我可以使 id 唯一并为第二个复选框创建第二个 js,但我希望单个 js 代码应该满足所有复选框,这可能吗?
-
@KartikeyVishwakarma 你可以使用this之类的东西。
标签: javascript php jquery html checkbox