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

form表单元素改动name无效

2013-09-06 
form表单元素更改name无效更改name无效,请高手说下原因,代码如下htmlhead/headbodyform namefr

form表单元素更改name无效
更改name无效,请高手说下原因,代码如下
<html>
  <head>
  </head>
  <body>
    <form name="frmMain">
      <input type="text" name="aaa" value="aaa" >
    </form>
  </body>
  <script>
     var na=frmMain.aaa;
     na.setAttribute("name","aaap");
     var nb=document.createElement("input");
     na.insertAdjacentElement('afterEnd', nb);
     nb.setAttribute("name","aaa");
     nb.value="bbb";
     alert(frmMain.innerHTML);
     alert(frmMain.aaa.value);//得到的是na的值
     alert(frmMain.aaap.value);//异常,aaap未定义
  </script>
</html>
[解决办法]

引用:
Quote: 引用:

你用的什么浏览器?
chrome29下测试正常的
另外,把script放进body内再试试

我的ie10,chrome都没问题,在firefox 提示错误

https://developer.mozilla.org/en-US/docs/Web/API/element.insertAdjacentHTML
从这里看的话,firefox不支持insertAdjacentHTML
insertAdjacentElement未知,MDN中搜不到。
[解决办法]
name作为变量名本就不算标准写法,有问题就不要这么用呗
[解决办法]
这样了

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
    <form name="frmMain">
      <input type="text" name="aaa" value="aaa" >
    </form>
<script type="text/javascript">
 var na=frmMain.aaa;
     na.setAttribute("name","aaap");
     var nb=document.createElement("input");
 if(na.insertAdjacentElement){


            na.insertAdjacentElement("beforeEnd" , nb);
     }else{
            na.insertAdjacentHTML("beforeEnd" , nb.outerHTML);
     }
     //na.insertAdjacentElement('afterEnd', nb);
    //insertAdjacentElement
     nb.setAttribute("name","aaa");
     nb.value="bbb";
 
 alert(frmMain.aaap.value);
</script>
</body>
</html>

热点排行
Bad Request.