网络编程 
首页 > 网络编程 > 浏览文章

jquery 1.3.2 IE8中的一点点的小问题解决方法

(编辑:jimmy 日期: 2025/9/19 浏览:3 次 )
使用的时候是这个样子的:

复制代码 代码如下:
var _val = $("input[name='input1'][checked]").val();

结果发现_val的值为undefined,开始还以为写的不对,可检查没有问题,这样写在IE6、7、FF、Chrome、Opera、Safari中都可以正常的得到值,就是在IE8中不行。百思不得其解,后来又实验:

复制代码 代码如下:
var _val = $("input[name='input1']").eq(0).val();

可以得到值,说明问题可能出现在radio的checked属性上,再实验:

复制代码 代码如下:
var _val = document.getElementsByName("input1")[0].getAttribute("checked");

在IE6、7、FF、Chrome、Opera、Safari中的值为true或false,而在IE8中为空,
在IE8中:

复制代码 代码如下:
var _val = document.getElementsByName("input1")[0].checked;

可以行到true或false的值,不知道这是IE8的bug还是微软另有深意呢?
最后使用:

复制代码 代码如下:
var _val = $(":radio[name='input1'][checked]").val();

这样在各种浏览器上都正常了,估计jquery1.3.2的测试人员对IE8的测试还不够全面,希望下一个版本能解决这个问题。
上一篇:javascript 读取xml,写入xml 实现代码
下一篇:jquery Firefox3.5中操作select的问题
友情链接:杰晶网络 DDR爱好者之家 南强小屋 黑松山资源网 白云城资源网 网站地图 SiteMap