【问题标题】:Getting checkboxes to maintain checked state on click获取复选框以在单击时保持选中状态
【发布时间】:2012-10-23 11:55:58
【问题描述】:

我尝试了各种方法来让我的复选框在单击时被选中。

以下工作对文档准备就绪:

$('input[name=foo]').attr("checked","checked");

但是,一旦我用点击事件包围它,复选框就不会保持选中状态。在点击时,他们会检查(他们应该),然后立即取消选中。

$("#selectall").click(function(){
$('input[name=foo]').attr("checked","checked");
});

我的 HTML:

<form id="frm1">
<input type="checkbox" name="foo" value="bar" />
</form>

【问题讨论】:

  • 你想达到什么目的?
  • 复选框不需要编写脚本即可工作 - 它们会自动完成所有工作。
  • 你能用小提琴展示一下吗?
  • 显然有一个 #selectall 元素来检查所有给定的复选框,以及关键字 maintain 已检查状态。

标签: jquery


【解决方案1】:

使用...

[type=checkbox]    

$("#selectall").click( function(){ $('input[type=checkbox]').attr("checked","checked"); } );

【讨论】:

  • 哦,我刚试过你的小提琴,它奏效了。似乎是我的链接中的 href 导致了问题。删除有效。非常感谢!!
  • 哦,我明白了,因为它一直在重新加载页面吧? x)
  • 是的 VIDesignz。你回答了我的问题。谢谢!
【解决方案2】:

试试这个 使用.prop() 而不是.attr()

HTML

<input id="selectall" type="checkbox" name="foo" value="bar">Select ALL

    <form id="form1">
       <input type="checkbox" name="foo" value="bar" />
       <input type="checkbox" name="foo" value="bar" /> 
       <input type="checkbox" name="foo" value="bar" /> 
       <input type="checkbox" name="foo" value="bar" />
    </form>

javascript

$("#selectall").click(function() {
    $('#form1 input[type=checkbox]').prop("checked", this.checked);
});

Check Fiddle

【讨论】:

  • VIDesignz .. 懒得创建 HTML ;)
猜你喜欢
  • 2017-12-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-25
  • 2016-06-19
  • 1970-01-01
  • 2023-04-06
  • 2013-06-08
相关资源
最近更新 更多