<script type="text/javascript" src="http://code.jquery.com/jquery-1.10.2.min.js"></script><table><input type="checkbox" id='cb' />
<script>
$(function () {
//alert($('#cb').prop('checked'))
$('#cb').attr('checked', true);
});
</script>没有问题啊,jQuery 中 attr() 和 prop() 方法的区别
<script>
$(function () {
//alert($('#cb').prop('checked'))
$('#cb').attr('checked', true);
});
</script>没有问题啊,jQuery 中 attr() 和 prop() 方法的区别
for (var i = 0; i < machines.length; i++) {
var strID = "machine_" + machines[i];
var checkobj = $("#" + strID);
if (checkobj.prop('checked') == false) {
checkobj.prop('checked', true) ;
}
}请不要质疑checkobj的有效性,因为我把checkobj.prop('checked', true) ;替换成checkobj.click() ;是可以正常工作的。
官方推荐使用prop的
完整代码比较多,总体就是通过ajax向服务器请求一些配置信息,服务器返回JSON数据,客户端将某个node的数据根据分隔符split到array中,然后就是这段代码,根据array中的数据生成element的id,通过id获得checkbox对象并设置checked属性。
其实“checked”属性是设置成功了,因为我尝试获取该属性值时得到的是true,只是UI上没有打勾。但是checkobj.click()却可以实现我想要的结果。
因为我不是搞web开发的,所以做法比较繁琐,还请见谅,对了,这些checkbox是放在bootstrap的portlet中的,应该不会有什么问题吧?我把他们的class都清除掉了。
用下面代码测试下<input type="checkbox" id="aa" />
<script type="text/javascript">
$(function(){
$("#aa").prop('checked', true);
});
</script>