jquery - 使用类选择器处理复选框

标签 jquery asp.net webforms

我有一个<asp:Checkbox />我想看看是否通过 jQuery 检查了它。问题是,它总是返回 false。这与我通过类选择元素有关吗?

js

$(document).ready(initialize);

var map;

function initialize() {

    var x;
    x = $(".chkSetMap");
    x.click(setMap);
}

function setMap() {

    if ($('.chkSetMap').attr('checked') == true) {
        $(".comboMap").attr("disabled", true);

    }
}

复选框

    <asp:CheckBox ID="chkSetMap" CssClass="chkSetMap" runat="server" />

呈现的复选框

<span class="chkSetMap"><input id="ctl00_ContentPlaceHolder1_chkSetMap" type="checkbox" name="ctl00$ContentPlaceHolder1$chkSetMap" /></span>

最佳答案

尝试使用 .is() 方法和 :checked 速记选择器

$(document).ready(initialize);

var $chkSetMap;

function initialize() {
    $chkSetMap = $(".chkSetMap input:checkbox").click(setMap);
}

function setMap() {
    $(".comboMap").attr("disabled", $chkSetMap.is(':checked'));
}
<小时/>

工作示例:http://jsfiddle.net/hunter/5XA7D/ 已更新!

<小时/>

由于 ASP.Net 服务器控件非常棒,因此它将您的复选框包装在 span 中。 spanchkSetMap 类,而不是复选框。

关于jquery - 使用类选择器处理复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6115895/

相关文章:

c# - 无法加载文件或程序集 'EntityFramework' 或其依赖项之一。程序集可能已被篡改

javascript - window.top === IE8 中的窗口错误条件

jQuery 从 :not 的 div 中选择文本

c# - Google+ 'share' 未检测到语言设置

asp.net - Entity Framework 中与联结表的多对多关系?

c# - 我可以使用 jquery 下拉列表而不是 ASP.NET

asp.net - 使用计划任务运行 ASPX 页面时出现问题

javascript - jQuery-UI slider 不显示

javascript - 未捕获的类型错误 : Cannot read property 'ready' of null

asp.net - 如何在保持 HTML 图像清晰度的同时缩小图像?