【问题标题】:Recognize the checkbox checked or not in jquery or javascript [duplicate]识别在jquery或javascript中选中或未选中的复选框[重复]
【发布时间】:2011-11-07 07:12:50
【问题描述】:

可能重复:
How do I check if a checkbox is checked with JQuery?

我有一个在灯箱中打开的以下表单

<form name="adminFormMod" id="adminFormMod" action="index.php" method="post">

<input type="text" name="myname" value="sss"/>
<input type="checkbox" name="test" id="test" value="tttt"  />
<input type="button" value="submit" onclick="updateresults()"/>

</form>

当我尝试检查天气时,在包含上述页面的 js 页面上,复选框是否被选中。我的以下代码不起作用

alert(document.getElementById('test').checked);

上面的总是提醒假的

即使使用以下 jquery 代码行

$('#adminFormMod').find(':input').each(function()
                {
                // alert('idhar');
                  switch(this.type)
                  {
                    case 'text':
                    //alert('text');
                    $(this).val('');
                    break;

                    case 'checkbox':
                    //alert($(this).attr('checked'));
                    if($(this).attr('name')=='test')
                    {
                      alert(this.checked);
                      alert($(this).attr('checked'));
                    }
                    break;

                  }
                }
                );

即使选中复选框,它也会始终提示错误。请帮助

【问题讨论】:

  • 在问问题之前,至少做一个谷歌搜索............不要在没有研究的情况下放任何东西

标签: javascript jquery


【解决方案1】:

试试这个:

$('#yourCheckbox').is(':checked')

【讨论】:

  • 我可以使用关键字(this)而不是#yourcheckbox,因为没有一个可以动态创建的多个复选框
  • 这取决于您的上下文中的“this”是什么。如果你用一些 jQuery 选择器遍历一个集合,那么 this 在大多数情况下是该选择器捕获的当前 jQuery 元素;因此,您可以执行this.is(":checked") 之类的操作,或者如果它是 DOM 元素 $(this).is(":checked")。但是在您的情况下,您可能还想尝试使用一些更通用的选择器(例如 $("input:checked").each(function...
  • 感谢您的回答和 cmets,但我认为存在一些问题,因为正如我所说,我的表单正在灯箱中打开,所以代码没有给出正确的结果。那我该怎么办?请帮助
【解决方案2】:

可能是:How do I check if a checkbox is checked with JQuery?的副本

检查是属性而不是属性,您需要编写代码略有不同:

$('#checkbox').is(":checked")

【讨论】:

    【解决方案3】:
    <script>
    
      var n = $("input:checked").length;
    if(n>0)
    {
    alert('checked');
    }
    
    }
    
    </script>
    

    http://oops-solution.blogspot.com/

    【讨论】:

      【解决方案4】:

      其他一些方法是

      // First way 
      $('#checkBox').attr('checked'); 
      
      // Second way 
      $('#edit-checkbox-id').is(':checked'); 
      
      // Third way for jQuery 1.2
      $("input[@type=checkbox][@checked]").each( 
          function() { 
             // Insert code here 
          } 
      );
      

      http://oops-solution.blogspot.com/

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-02-02
        • 2019-01-05
        • 2015-02-23
        • 1970-01-01
        相关资源
        最近更新 更多