我在列表上放置了复选框。当您点击任何复选框时,属于它的输入框会变为不可见状态。我使用了以下JavaScript函数,但它没有起作用:
我的JS函数:
function ActivePassive() {
var list = document.getElementsByClassName("switchery");
for (var i = 0; i < list.length; i++) {
if (liste[i].checked) {
console.log("aa"); // if checked = true, it write aa.
document.getElementById("focus").style.display = 'block'; //but it doesn't work
}
else {
console.log("bb"); // if checked = false, it write bb.
document.getElementById("focus").style.display = 'none'; //but it doesn't work
}
}
}
我的HTML代码:
<td>
<div class="form-group">
<div class="col-md-10">
<div class="checkbox checkbox-switchery">
<label>
@Html.CheckBoxFor(modelItem => Model[i].status, new { @class = "switchery" , @onchange = "ActivePassive()" })
<label class="label-rounded bg-blue-300">
Yes/No
</label>
</label>
</div>
</div>
</div>
</td>
<td>
<div id="focus" class="col-md-4">
<div class="form-group has-feedback has-feedback-left">
@Html.EditorFor(modelItem => Model[i].Value, new { htmlAttributes = new { @class = "form-control" } })
@Html.ValidationMessageFor(modelItem => Model[i].Value, "", new { @class = "text-danger" })
</div>
</div>
</td>
document.getElementById("focus").
将始终检索相同的项目。假设您的代码在循环内部,您应该确保您的ID是唯一的。 - Canica