【问题标题】:jQuery And Javascript Changing checkbox' checked attribute? [duplicate]jQuery 和 Javascript 更改复选框的选中属性? [复制]
【发布时间】:2013-02-23 20:13:05
【问题描述】:

我有一个移动客户端并且有一个简单的问题。

这是我的 html 部分:

<label id="112233" for="checkbox-detailed_limit">Take Profit</label>
<input type="checkbox" name="checkbox-detailed_limit"
id="checkbox-detailed_limit" data-mini="true"/>

我想在容器页面显示时更改复选框的选中状态。

我已使用 javascript 和 jquery 进行此操作,但都失败了。

这里有一些例子:

$("#checkbox-detailed_limit").attr("checked", false).change();
$("#checkbox-detailed_limit").attr("checked", false).trigger("change");
$("#checkbox-detailed_limit").prop("checked", false);
$("#checkbox-detailed_limit").removeAttr("checked");
$('input:checkbox', $("#112233")).prop("checked", false);
$("#112233").filter(':checkbox').prop("checked", false);
$('input').filter(':checkbox').prop('checked',false);
$("#112233").children('input[type="checkbox"]').prop('checked', false);
$("#112233").find("checkbox").attr("checked", false);
document.getElementById("checkbox-detailed_limit").checked = false;

有什么办法可以帮到我吗?

【问题讨论】:

  • JSFiddle 有一个工作示例。
  • 已经有这么多问题了,你怎么没在 SO 上找到这个?
  • 此外,您的大多数 示例 确实有效。您是否尝试将 false 更改为 true

标签: javascript jquery jquery-mobile checkbox


【解决方案1】:

这实际上是一个 jquery-mobile 问题,因为这些复选框将得到增强。

$("#checkbox-detailed_limit").attr("checked",true).checkboxradio("refresh");

来源:http://jquerymobile.com/demos/1.2.0/docs/forms/checkboxes/methods.html

【讨论】:

  • 工作正常。感谢您的快速和建设性的回答。
【解决方案2】:

我不确定您真正想要什么,但您想将选中状态设置为复选框?那么这可以像这样完成。

$("#checkbox-detailed_limit").prop("checked", true); //for jquery 1.7+ 

$("#checkbox-detailed_limit").attr("checked", true); //for jquery < 1.7  

【讨论】:

    【解决方案3】:

    选中复选框:

    $("#"+id).attr("checked", "checked");
    

    取消选中复选框:

    $("#"+id).removeAttr("checked");
    

    【讨论】:

      【解决方案4】:
      $('input[name=foo]').attr('checked', !$('input[name=foo]').is(':checked')); 
      

      此脚本将切换复选框,并且应该可以正常工作。如果这不起作用,则您的 javascript 代码在其他地方有错误。使用控制台将帮助您找到问题。

      【讨论】:

        【解决方案5】:

        试试这个,

           $("#checkbox-detailed_limit").prop("checked", true);
           $("#checkbox-detailed_limit").prop("checked", false);
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-04-07
          • 2013-09-09
          • 2012-05-26
          • 2014-06-16
          • 1970-01-01
          • 2012-08-17
          • 2011-02-16
          • 1970-01-01
          相关资源
          最近更新 更多