0

我只想用 JQuery 检查我所有的复选框。这些复选框是使用 JSF 创建的。

我试过 :

$("input[type=checkbox]").each( 
        function() {              
           $(this).prop('checked', true);
// OR
           $(this).attr('checked', true);
// OR         
           $(this).attr('checked', 'checked');
          alert($(this).attr('id'));
            } 
        );

没有任何工作...

JSF会是问题吗?这些复选框的值与一些托管 bean 布尔值相关联。

感谢帮助。

PS:我的 alert() 函数正确返回复选框的 id,JQuery 版本为:

jQuery JavaScript 库 v1.8.1

4

3 回答 3

2

这应该可以解决问题

$(":checkbox").prop('checked',true);

演示

于 2012-10-29T15:40:00.520 回答
1

好的,我想我已经理解了这个问题......

当我尝试这段代码时:

$(":checkbox").prop('checked',true);
$("input[type=checkbox]").each( 
        function() {          
          alert($(this).prop('checked'));               
        } 
    );

我总是有true价值观,但我看到一些复选框未选中......

所以值改变了,但视觉保持不变。这是因为我使用 JSF 并且它遵循渲染:

在此处输入图像描述 在此处输入图像描述

这个checkox是由一些CSS背景等组成的......

因此,我必须更改父 div 的 CSS(带背景...),以使这个 checkox可视化检查,因为它的值已经设置为 true。

这只是一个视觉问题,而不是价值问题。

谢谢

于 2012-10-29T16:06:32.027 回答
0

尝试使用普通 DOM:

$("input[type=checkbox]").each(function() { this.checked = true; });

也可以看看:

使用 jQuery 为复选框设置“选中”?

于 2012-10-29T15:53:55.053 回答