回答

收藏

使用 jQuery 为复选框设置“checked”

技术问答 技术问答 282 人阅读 | 0 人回复 | 2023-09-11

我想做这样的事checkbox使用jQuery打勾:' O$ O6 Q# C  h0 u9 N/ @
    $(".myCheckBox").checked(true);+ |  R+ Z( Y! L+ R9 [9 T9 j
或者
5 Q& g- k1 d, p- q5 p) o
    $(".myCheckBox").selected(true);0 v! M2 @7 x- G8 `! ~7 {
这样的事情存在吗?& j! L6 ^* g7 v# B5 Y* a: ?
                                                               
) \! K/ i% o! M2 p+ ~" X2 A- T! n    解决方案:                                                                  k. X* Z. W) o0 D' q$ T+ r" {
                                                                Modern jQuery使用.prop():
; r$ Z; F+ V2 ~7 ?4 C
    $('.myCheckbox').prop('checked',true);$('.myCheckbox').prop('checked',false);
    & Y/ }# ]2 L  j
DOM API如果只使用一个元素,总能访问底层HTMLInputElement并修改其.checked属性:6 ^5 f# Y* I9 V( |
    $('.myCheckbox')[0].checked = true;$('.myCheckbox')[0].checked = false;
    6 ], J( n4 b7 W! r9 W4 x
使用.prop()and.attr()取代 的方法this其优点是它们将操作所有匹配元素。
& t, m/ q$ b6 ]8 V. S' u& P, xjQuery 1.5.x 及以下该.prop()方法不可用,需要使用.attr().: y& |; e6 b2 f0 q- m' x2 }
    $('.myCheckbox').attr('checked',true);$('.myCheckbox').attr('checked',false);
    5 f3 |, J. y1 g3 ?. W
请注意,这是jQuery 1.6 版前单元测试使用方法,最好使用,$('.myCheckbox').removeAttr('checked);因为如果最初选择了这个框,后者将被更改.reset()调用其任何表单的行为- 微妙但可能不受欢迎的行为变化。
( b+ S3 `9 o/ Z! [/ o9 Y更多上下文,checked可以在1.6 版发行说明和文档Attributes vs. Properties从 1部分找到相关从 1部分.5.x 到 1.6 过渡中对属性/属性处理变化的一些不完整讨论。.prop()
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则