- 浏览: 1777372 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
奔跑的小牛:
例子都打不开
如何使用JVisualVM进行性能分析 -
蜗牛coder:
好东西[color=blue][/color]
Lucene学习:全文检索的基本原理 -
lovesunweina:
不在haoop中是在linux系统中,映射IP的时候,不能使用 ...
java.io.IOException: Incomplete HDFS URI, no host -
evening_xxxy:
挺好的, 谢谢分享
如何利用 JConsole观察分析Java程序的运行,进行排错调优 -
di1984HIT:
学习了~~~
ant使用ssh和linux交互 如:上传文件
转自:http://www.cnblogs.com/net205/archive/2008/08/31/1280432.html
前几天开发中用Javascript脚本创建Checkbox时,发现设置checked属性有问题,后来测试得到设置checked属性在IE,Firefox,Opera中存在差异。
我们先来看一下网上搜索到的例子。
1、Internet Explorer 6 and the checked checkbox
http://claudio.cicali.org/article/90/ie-6-and-the-checked-checkbox
You dinamically create a checkbox and then put its state to checked. Then, you append your new checkbox to its parent. In firefox there’s nothing wrong with that. But Internet Explorer DOES NOT check the box. Why? Well, FIRST you have to show the checkbox and THEN check it.
So:
chk = document.createElement('INPUT') chk.type='checkbox' chk.checked=true document.getElementById('container').appendChild(chk)
Does not work in IE. You have to rewrite this as:
chk = document.createElement('INPUT') chk.type='checkbox' document.getElementById('container').appendChild(chk) chk.checked=true
从这里我们可以看出在IE中,checked属性需要在添加到页面以后设置才有效,而FF,Opera都不存在此现象。
2、firefox和ie下面的初始化checkbox
http://www.cnblogs.com/sxlfybb/archive/2008/03/20/1114242.html
这篇日志得出同样的结果。(申明:firefox下是支持cb.checked=true这样的写法,checked是一个可读写的属性。至少我的环境是正常的。)
3、使用CheckBox的indeterminate属性的问题
http://blog.csdn.net/yangdengfeng2003/archive/2007/05/05/1597399.aspx
这篇日志提到了CheckBox的indeterminate属性的问题,注意:CheckBox的indeterminate是一个独立的 属性,和CheckBox的checked、status的取值无关,也就是说它只会影响CheckBox的外观显示,我们仍然可以正常的使用脚本读取 checked和status的值。
4、DOM & checkbox(checked status)
http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=842144&SiteID=1
帖子中提到Checkbox在IE6和IE7下的多种情况。(此帖子中的代码本人没有测试过。)
最后看看本人测试结果及结论:
1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <title>CheckBox Example</title> 5 <meta name="generator" content="editplus" /> 6 <meta name="author" content="Net205" /> 7 <meta name="keywords" content="Net205,冷风工作室" /> 8 <meta name="description" content="CheckBox Example in IE、FF、OP" /> 9 <meta http-equiv='Cache-Control' content='no-cache'/> 10 </head> 11 12 <body> 13 <% 14 Response.Buffer = true 15 Response.Expires = 0 16 Response.ExpiresAbsolute = Now() - 1 17 Response.CacheControl = "no-cache" 18 Response.AddHeader "Pragma", "No-Cache" 19 20 For Each e In Request.Form 21 Response.Write e & " : " & Request.Form(e) & "<br />" 22 Next 23 24 %> 25 <form id="frm" name="frm" method="post" action="?"> 26 <input type="checkbox" id="chkTest1" name="chkTest1" value="1" /> 27 <script> 28 /*you can use setAttribute to set the value of attribute,like this: 29 chk.setAttribute("name", "chkTest2"),chk.setAttribute("checked", true)*/ 30 var chk1 = document.createElement('input'); 31 chk1.id = "chkTest2"; 32 chk1.name = "chkTest2"; 33 chk1.type = "checkbox"; 34 chk1.value = "1"; 35 //chk1.defaultChecked=true; 36 //chk1.indeterminate = true; 37 document.getElementById('frm').appendChild(chk1); 38 chk1.checked=true; 39 </script> 40 <input type="submit" /> 41 </form> 42 </body> 43 </html>
结论:
1、当用Javascript脚本创建并添加CheckBox复选框时,对于IE,必须在添加(如:appendChild)后设置checked值才有效,FF、OP都有效,无此现象。
2、defaultChecked直接写到属性里,IE、FF、OP都不支持,当用Javascript脚本设置为true时,都支持(无顺序关系),并在服务器端可以取到值。
3、indeterminate当属性添加时IE、FF、OP都无效,只有当用Javascript脚本设置时,IE才有效,并在服务器端取不到值,只会影响CheckBox的外观显示。
4、当用setAttribute设置checked值时,如果为unchecked状态,对于FF、OP则不需要设置任何值,就算设置为fasle、"false"或""(空字符串),checkbox都为选中状态。
5、类似document.createElement("<input type=checkbox>");创建元素时,只有IE才有效。
说明:本人测试环境为IE6.0 sp2、Firefox 3.0.1、Opera 9.52,如有其他情况,请各位同仁指出。
发表评论
-
跨域资源共享的10种方式
2010-11-01 16:44 1834呵呵,发现一不错文章 ... -
javascript 使用Cookies
2010-02-21 10:38 1285此 ... -
JavaScript性能优化--创建文档碎片createDocumentFragment
2010-01-15 09:51 3639《javascript高级程序设计》第六章DOM基础突然看到文 ... -
循环removeChild要注意对DOM的即时影响
2010-01-14 13:47 2233有这么一段代码: <ul id="demo& ... -
创建DOM元素的方便简单清晰方法
2010-01-12 17:17 15991、受够了innerHTML="";拼出来 ... -
IE6,IE7下checkbox选中问题
2009-09-02 11:43 5390* 节点1 ** 节点2 ** 节点3 *** 节点4 ... -
IE下Form多一行的解决方法
2009-08-19 11:29 2147两种方法: form style="displ ... -
IE中<table>元素不支持JS加入行appendChild
2009-07-31 16:50 7090HTML中有一表格 <table id=" ... -
IE7下getElementsByName得不到值的终极方案
2009-07-30 19:37 5796IE7下,如果HTML元素是JS创建的,那么你采用docu ... -
×与×?的区别--正则匹配取匹配量词的最小值最大值
2009-07-07 15:55 2463关于Greedy、Reluctant与Possessive: ... -
日历控件-My97DatePicker
2009-06-30 15:47 1795不用多说,这个日历控件很流行,应用也越来越多,作者也在不断完善 ... -
发现IE下的优秀JavaScript调试工具Companion.JS
2009-06-05 10:00 4088做web开发的朋友都清楚,js程序的调试是相当不爽 ... -
JavaScript基础之Array,你精通了吗?
2009-05-18 10:32 12124一、 学好JavaScript ... -
JS封装类或对象的最佳方案
2009-05-05 18:34 30545JS封装类或对象的最佳方案 面向对象强大的 ... -
如何摆脱JS糟糕的字符串连接,我掉进了陷阱
2009-04-30 22:18 7474一、ECMAScript的字符串是不可变的,即它们的值不能改变 ... -
JavaScript中apply与call的用法意义及区别
2009-04-02 10:01 1493JavaScript中有一个call和apply方法,其作 ... -
window.open打开新窗口,以post方式传参方法
2008-12-22 17:21 18185网上搜索到方法: function openSpecf ... -
IE与FF对 DOM节点类型的部分不同
2008-12-05 14:13 1952万维网联盟(W3C)定义HTML DOM 标准节点有以下几种 ... -
JS去空格
2008-12-03 12:38 2329首先说明: 返回对象类型原型的引用:objectName.pr ... -
多选的移动函数
2008-11-18 16:16 1160function MoveSelectedItem(sourc ...
相关推荐
火狐中 获取checkbox的checked属性的方法
1、页面加载成功后,点击选中或取消选中该checkbox,checkbox属性里的checked属性不会根据该checkbox是否选中而变化 2、checkbox里的onchange或onclick方法里用jquery的attr方法获取checked是看得到的checked属性的...
如果用一个checkbox被选中,alert这个checkbox的属性”checked”的值alert($(#xxx).attr(“checked”)),会打印出”true”,而不是”checked”! 如果没被选中,打印出的是”undefined”。 注意红色的部分...
问题:经常使用jQuery插件的attr方法获取checked属性值,获取的值的大小为未定义,此时可以用prop方法获取其真实值,下面介绍这两种方法的区别: 1.通过prop方法获取checked属性,获取的checked返回值为boolean,...
checked属性在IE下不能正确实现的问题
博文链接:https://qsfwy.iteye.com/blog/234331
js操作checkbox本人建议用document.getElementById(checkbox_id).checked不推荐使用jquery操作checkbox,感兴趣的朋友不要错过
使用click事件,根据checked属性进行判断即可。 示例: $(#chkRreviewOffline).click(function(){ if(this.checked){ $('#review-offline .btn_checkbox input[type=checkbox]').each(function(index){ this.c
在ie6、ie7下,对于checkbox的勾选状态checked属性的值获取始终是null,利用jquery在获取的html中增加checked属性
方案:使用checkbox 的 checked 属性、巧妙地制作导航栏 结果: 我们主要制作成这样这样的的导航栏: 首先、我们写出相对的html 由于时间问题、svg没有处理到类中、所以这里给出svg的空标签、大家如果想看效果、...
input id=”cb2″ type=”checkbox” checked=”checked” /> jquery判断checked的三种方法: 代码如下: .attr(‘checked’): //看版本1.6+返回:”checked”或”undefined” ;1.5-返回:true或false .prop(...
checked属性即分为attribute->checked,和property->true,false。 对于一个checkbox,若未定义checked=”checked”,alert($.attr(“checked”)) 的结果是undefined。若已定义则结果是checked。attribute并
It's an Android library that allows you to use Layout as RadioButton or CheckBox. The librarie is Android 14 compatible. Gradient effect is only Android 21 compatible. The demo below is inspired by ...
主要介绍了解决Django中checkbox复选框的传值问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
初一看这个功能很简单,一个checkbox,加一段脚本,把这个checkbox的checked属性设为false。 代码如下: <input type=”checkbox” id=”chk_UnInital” name=”chk_UnInital” /> [removed]document....
CheckBox的indeterminate是一个独立的属性,和CheckBox的checked、status的取值无关,也就是说它只会影响CheckBox的外观显示,我们仍然可以正常的使用脚本读取checked和status的值