首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

在IE上,用JQuery无法 修改input 的name属性

2012-08-08 
在IE下,用JQuery无法 修改input 的name属性如题,下面是测试代码,先谢过![codeJScript]htmlheadscrip

在IE下,用JQuery无法 修改input 的name属性
如题,下面是测试代码,先谢过!
[code=JScript]
<html>
<head>
<script   type= "text/javascript "   src= "jsframe/jquery-1.4.2.js "> </script>
<script   type= "text/javascript ">
             
              $(document).ready(function(){
var   num   =   1;
                                var   data   =   ' <div> '
                  + ' <input   type=\ 'text\ '   name=\ 'n1\ '   value=\ 'san\ '/> '
  + ' <input   type=\ 'text\ '   name=\ 'n2\ '   value=\ 'zhang\ '/> '
  + ' </div> ';
                                var   temp   =   $(data);
alert(temp.html());//未修改前
                                temp.find( 'input ').each(function(){
                                                  $(this).attr( 'name ', 'f_ '+(num++));
                                                  $(this).attr( 'value ', 'v_ '+(num++));
                                                  //alert($(this).attr( 'name '));//这里显示修改后的值是正常的
                                });
                                alert(temp.html());//打印出的结果显示,在IE下name值未修改
              });

</script>
</head>
<body>
</body>
</html>
[/code]

[解决办法]
这个码我运行时就已经有问题了. 如果data是字符串, 直接用正则在data中改值, 如果要通过jq索引DOM来改值, 最好把它append后再修改
[解决办法]

探讨

引用:

这个码我运行时就已经有问题了. 如果data是字符串, 直接用正则在data中改值, 如果要通过jq索引DOM来改值, 最好把它append后再修改
这里只是拿简单的例子作测试,实际情况还涉及到合并控件,替换,插入的操作,直接用正则表达式控制不方便。

[解决办法]
id,type,name 应该都不能下载的,而且也不建议修改
[解决办法]
好像微软规定input的type、name属性都不能修改,而且用$('<input />')创建时必须指定,用attr({'type':'text', 'name':'name'})不行,所以在IE下自然也就通不过。
[解决办法]
谁说name不可以改???
HTML code
<div name="name1" id="id1">d</div><script type="text/javascript">alert(document.getElementById("id1").name);    //显示name1document.getElementById("id1").name='name2';alert(document.getElementById("id1").name);    //显示name2</script> 


[解决办法]
可以用 obj.parentNode.replaceChild()
[解决办法]
http://msdn.microsoft.com/zh-cn/library/ms534700(en-us,VS.85).aspx

As of Microsoft Internet Explorer 5, the type property is read/write-once, but only when an input element is created with the createElement method and before it is added to the document.

name也一样

热点排行
Bad Request.