javascript - 启用或禁用列表框的复选框
问题描述
我在创建的 ASP.NET MVC 页面上有一个复选框,如下所示:
<div>
@Html.CheckBoxFor(m => m.allUsers, new { Name = "allUsersCheck" })
@Html.LabelFor(m => m.allUsers)
</div>
我还有一个创建的列表框:
@Html.ListBoxFor(x => x.selectedUsers, Model.ListofUsers, new { style = "width:200px", size = 10, Id = "lbUsers" })
我有以下脚本(我在选中复选框时编写了该脚本以禁用列表框。我不明白为什么它不起作用。有人可以指出我的代码有什么问题吗?
此脚本在同一个 .cshtml 页面中,而不是在 .js 文件中:
<script >
$(function () {
$('#allUsersCheck').click(function () {
$('#lbUsers').prop("disabled", $(this).prop('checked'));
});
});
</script>
解决方案
因为您使用的是“#allUsersCheck”的 ID 选择器。与您的列表框(?)不同,该复选框没有 Id 属性。
@Html.CheckBoxFor(m => m.allUsers, new { Name = "allUsersCheck" })
使用 Id 属性尝试以下操作:
@Html.CheckBoxFor(m => m.allUsers, new { Name = "allUsersCheck", Id = "allUsersCheck" })
推荐阅读
- angular - 如何完成嵌套的 Observables?
- flutter - “颤振医生”卡住了,颤振命令不起作用
- python - Python 对于任何也暴露 len() 的可迭代对象,正确的类型是什么?
- php - 如何在不使用 setter 的情况下调试更新 php Trait 的实例变量
- python - 如何修复“禁止(未设置 CSRF cookie。)”
- javascript - Chrome 重定向被取消 - 升级不安全请求:1
- python - driver.page_source 使用 Selenium 仅返回 meta name="ROBOTS" content="NOINDEX, NOFOLLOW"
- php - php包含标题在某些机器上不显示
- linux - 操作系统确定内核或某些用户程序的输入
- android - 如何在我的活动中存储来自 API 的数据