【问题标题】:JQuery Check for Checkbox is checked选中 JQuery Check for Checkbox
【发布时间】:2012-05-31 22:34:33
【问题描述】:

即使复选框被选中,该函数也总是返回 false。我真的无法打击我做错了什么。我正在使用复选框来启用和禁用 gridview 中的文本框。但是,它似乎不起作用。谢谢您的帮助。我已经在下面发布了html和jq代码。

HTML 代码:

<asp:GridView ID="grdFees" runat="server" AllowPaging="false" CssClass="Grid" AutoGenerateColumns="false" EmptyDataText="No Data Found" EmptyDataRowStyle-HorizontalAlign="Center" EmptyDataRowStyle-CssClass="gridItem" TabIndex="5">
<Columns>
<asp:TemplateField HeaderText="Select" HeaderStyle-HorizontalAlign="center"
                                ItemStyle-HorizontalAlign="center" ItemStyle-Width="2%">
                                <ItemTemplate>
                                    <asp:CheckBox ID="chkselect" runat="server" CssClass="checkbox" 
                                    Width="15px" Checked="false" />
                                </ItemTemplate>
                            </asp:TemplateField>

</Columns>
</asp:GridView>

jQuery 代码:

$(document).ready(function() 
    {
        $(".checkbox").click(function()
        {
        if ($(this).is(":checked")) 
        {
            alert("true");
        }else
        {
            alert("false");
        }
});

【问题讨论】:

    标签: jquery gridview checkbox


    【解决方案1】:

    ASP.NET 可能不会将CssClass 的值应用于复选框本身,而是应用于生成的标签和/或容器元素。

    尝试改用:checkbox 选择器:

    $(document).ready(function() {
        $("input:checkbox").click(function() {
            if ($(this).is(":checked")) {
                alert("true");
            } else {
                alert("false");
            }
        });
    });
    

    【讨论】:

    • 投赞成票,非常感谢。这让我发疯了。我是如何在 HTML 检查时错过的,这超出了我的理解。
    • 天哪!你刚刚为我拉完一束头发。非常感谢!
    【解决方案2】:

    由于网格不将类应用于复选框,您可以执行类似的操作。

    $(document).ready(function() {
        $(".checkbox :checkbox").click(function(){
            if (this.checked) {
                alert("true");
            } else {
                alert("false");
            }
        }); 
    });
    

    【讨论】:

      【解决方案3】:
      $(document).ready(function() {
          $("#chkselect").click(function(){
              if (this.checked) { // can also use $(this).is(':checked') as you do
                  alert("true");
              } else {
                  alert("false");
              }
          }); // you code miss "});" here
      });
      

      你也可以使用选择器

      $(':input:checkbox')$('input:checkbox')

      【讨论】:

      • 感谢您的回复...但仍然无法正常工作。警报始终显示为 false。
      猜你喜欢
      • 2016-11-25
      • 1970-01-01
      • 1970-01-01
      • 2018-06-05
      • 1970-01-01
      • 1970-01-01
      • 2011-10-02
      • 2022-12-27
      • 2015-10-11
      相关资源
      最近更新 更多