我想这样做,使用jQuery勾选复选框:

$(".myCheckBox").checked(true);

or

$(".myCheckBox").selected(true);

这样的事情存在吗?


当前回答

如果您正在使用PhoneGap进行应用程序开发,并且您想立即显示按钮上的值,请记住执行此操作

$('span.ui-[controlname]',$('[id]')).text("the value");

我发现,如果没有跨度,无论你做什么,界面都不会更新。

其他回答

您还可以使用新方法扩展$.fn对象:

(function($)  {
   $.fn.extend({
      check : function()  {
         return this.filter(":radio, :checkbox").attr("checked", true);
      },
      uncheck : function()  {
         return this.filter(":radio, :checkbox").removeAttr("checked");
      }
   });
}(jQuery));

然后你可以这样做:

$(":checkbox").check();
$(":checkbox").uncheck();

或者,如果您使用其他使用这些名称的库,您可能希望为它们提供更多的唯一名称,如mycheck()和myuncheck()。

试试看:

$('#checkboxid').get(0).checked = true;  //For checking

$('#checkboxid').get(0).checked = false; //For unchecking

这里有一种不使用jQuery的方法

函数addOrAttachListener(el,type,listener,useCapture){if(el.addEventListener){el.addEventListener(类型,监听器,useCapture);}否则如果(el.attachEvent){el.attachEvent(“on”+类型,监听器);}};addOrAttachListener(窗口,“加载”,函数(){var cbElem=文档.getElementById(“cb”);var rcbElem=文档.getElementById(“rcb”);addOrAttachListener(cbElem,“单击”,函数(){rcbElem.checked=cbElem.check;},假);},假);<label>单击我!<input id=“cb”type=“checkbox”/></label><label>反射:<input id=“rcb”type=“checkbox”/></label>

$('controlCheckBox').click(function(){
    var temp = $(this).prop('checked');
    $('controlledCheckBoxes').prop('checked', temp);
});

如jQuery文档所述,请注意Internet Explorer 9之前的Internet Explorer内存泄漏:

在版本9之前的Internet Explorer中,使用.prop()设置DOM元素属性设置为除简单基元值以外的任何值如果属性为在移除DOM元素之前未移除(使用.removeProp())从文档中删除。在没有内存的情况下安全地设置DOM对象的值泄漏,请使用.data()。