根据W3C的表单规范 ,在checked属性是一个布尔属性, 这意味着,如果这个属性(attribute)是目前存在, 即使,该属性没有对应的值,或者被设置为空字符串值,或甚至是"false",相应的属性(property)为true。 这才是真正的所有布尔属性(attributes)。
然而,要记住的最重要的概念是checked特性(attribute)不是对应它checked属性(property)。特性(attribute)实际对应的是defaultChecked属性(property),而且仅用于设置复选框最初的值。checked特性(attribute)值不会因为复选框的状态而改变,而checked属性(property)会因为复选框的状态而改变。因此, 跨浏览器兼容的方法来确定一个复选框是否被选中,是使用该属性(property)。
以上解释只是我复制来的,如何解决标题问题我也不知道,这个问题在谷歌浏览器里并不会出现,而是在ie浏览器里才会出现。。。
解决方法:在条件语句中改为if($("[name=‘boxCode’]").prop(‘checked’) != false){}
这样修改,把执行语句调换一下。
上面的方法经测试并不可行。最后用了以下方法:
if($(":checkbox[name=Code]:checked").size() == 0) {
Dialog.alert(“请至少选择一项!”);
}else{}这次应当不会出错了