问题:IE7中无法使用Jquery动态操作页面元素的name属性。

在项目中有出现问题,某些客户的机器偶尔会有,后台取不到前台的数据值。
然开发和测试环境总是不能重现问题。坑爹之处就在于此,不能重现就不能调试,就不能知道改了后还会不会有这样的问题。
想想可能与客户环境唯一不同就只有可能是js缓存问题了,然后把所有的js文件引用的地方都加上一个当前时间参数,然问题依然存在。
本来规定的版本就是IE8,所以也没有想过会有版本兼容问题,在说了咱用的是jquery,jqeruy的出现不就是号称为了解决浏览器的兼容问题么。
该死了问题,还真实版本问题。因为某些页面需要用到IE8的兼容模式,然兼容模式其实就是像下兼容,那不就是兼容IE7 了么?
于是本地用demo测试了下。
<form id="form1" runat="server">
<div id="div">
<input id="input" name="1" value="123" />
</div>
</form>
<script src="jquery-1.6.4.min.js"></script>
<script>
$("#input").attr("name", "myname");
alert("name:" + $("#input").attr("name") + "***html:" + $("#div").html());
</script>
IE8:
ok!
IE8兼容模式:
??为什么 $("#input").attr("name")取到的是修改后的值,而$("#div").html() 取到的name还是原先的值??
F12查看生成的html
擦 submitName 是什么东东?明显name没有改变。submitName 应该是jquery生成的 然后读取name的时候 也是直接读取的submitName 的值。
那 为什么$("#div").html() 取的值中没有submitName 呢 ?? 我也不知道jquery中的html方法是怎么实现的~~
项目中的实现方式类似于:
<form id="form1" runat="server">
<div id="div">
<input id="input" name="1" value="123" type="text" />
</div>
<div id="div2">
</div>
</form>
<script src="jquery-1.6.4.min.js"></script>
<script>
//alert("name:" + $("#input").attr("name") + "***html:" + $("#div").html());
$("#input").attr("name", "myname");
$("#div2").html($("#div").html());
var nameVal = $("#div2").find("input[name='myname']").val();
alert(nameVal);
</script>
这样 在IE8和谷歌浏览器 取值正常,在IE8兼容模式却取不到值。【不要问为什么非要这么赋值取值,这是demo'类似于'的实现,且是一个框架】
解决方案:
1.直接用jquery修改name 然后访问name是ok的,虽然 中间是生成了submitName 。
2.可以先$("#div2").html($("#div").html()); 然后在修改.attr("name", "myname");
3.可以直接拼接html。 $("#div").html("<input id="input" name="myname" value="123" type="text" />")
最后百度了下,原来是 IE7不能用document.getElementsByName()访问js动态创建和修改后的name值。
总结
以上所述是小编给大家介绍的解决IE7中使用jQuery动态操作name问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
# jquery
# 动态操作name
# jQuery常见面试题之DOM操作详析
# 基于jQuery解决ios10以上版本缩放问题
# 解决JQuery全选/反选第二次失效的问题
# 关于JS与jQuery中的文档加载问题
# jQuery选择器特殊字符与属性空格问题
# 详解jQuery同步Ajax带来的UI线程阻塞问题及解决办法
# 20个最常见的jQuery面试问题及答案
# 会有
# 的是
# 就不能
# 类似于
# 小编
# 是一个
# 这是
# 就在
# 在此
# 说了
# 之处
# 死了
# 还会
# 是怎么
# 中有
# 给大家
# 可以直接
# 想过
# 非要
# 不能用
相关文章:
建站IDE高效指南:快速搭建+SEO优化+自适应模板全解析
网站制作需要会哪些技术,建立一个网站要花费多少?
如何在宝塔面板中修改默认建站目录?
c# 在ASP.NET Core中管理和取消后台任务
Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递
如何实现建站之星域名转发设置?
台州网站建设制作公司,浙江手机无犯罪记录证明怎么开?
装修招标网站设计制作流程,装修招标流程?
如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?
网站制作话术技巧,网站推广做的好怎么话术?
重庆市网站制作公司,重庆招聘网站哪个好?
建站之星如何一键生成手机站?
建站之星后台密码如何安全设置与找回?
javascript中对象的定义、使用以及对象和原型链操作小结
建站VPS配置与SEO优化指南:关键词排名提升策略
常州企业网站制作公司,全国继续教育网怎么登录?
SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?
想学网站制作怎么学,建立一个网站要花费多少?
如何选择高性价比服务器搭建个人网站?
Android滚轮选择时间控件使用详解
如何访问已购建站主机并解决登录问题?
,怎么用自己头像做动态表情包?
阿里云网站搭建费用解析:服务器价格与建站成本优化指南
制作门户网站的参考文献在哪,小说网站怎么建立?
宝塔面板如何快速创建新站点?
如何在阿里云虚拟服务器快速搭建网站?
家庭服务器如何搭建个人网站?
教学论文网站制作软件有哪些,写论文用什么软件
?
武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?
图册素材网站设计制作软件,图册的导出方式有几种?
哈尔滨网站建设策划,哈尔滨电工证查询网站?
如何快速建站并高效导出源代码?
如何快速上传自定义模板至建站之星?
阿里云网站制作公司,阿里云快速搭建网站好用吗?
C++时间戳转换成日期时间的步骤和示例代码
家族网站制作贴纸教程视频,用豆子做粘帖画怎么制作?
头像制作网站在线制作软件,dw网页背景图像怎么设置?
英语简历制作免费网站推荐,如何将简历翻译成英文?
攀枝花网站建设,攀枝花营业执照网上怎么年审?
建站之星伪静态规则如何正确配置?
建站VPS选购需注意哪些关键参数?
北京建设网站制作公司,北京古代建筑博物馆预约官网?
建站之星如何防范黑客攻击与数据泄露?
如何通过FTP服务器快速搭建网站?
官网自助建站平台指南:在线制作、快速建站与模板选择全解析
如何在Golang中引入测试模块_Golang测试包导入与使用实践
建站之星×万网:智能建站系统+自助建站平台一键生成
TestNG的testng.xml配置文件怎么写
如何在Windows虚拟主机上快速搭建网站?
如何选择靠谱的建站公司加盟品牌?
*请认真填写需求信息,我们会在24小时内与您取得联系。