日期:2014-05-16  浏览次数:20374 次

setAttribute()不能给元素指派名为name的属性吗?
偶需要在页面上通过javascript动态添加一组checkbox,由于checkbox的id已经留作它用,只能通过name来遍历那个checkbox是否被选定,可是以下代码并不能向checkbox添加一个name属性,偶错在哪呢?
var   o   =   document.createElement( "input ");
o.setAttribute( "type ", "checkbox ");
o.setAttribute( "name ", "test ");
最后通过appendChild(o)将input添加到页面中。

可是,getElementsByName( "test ")居然返回null,郁闷...

------解决方案--------------------
o.name = "test "
简单的方法先试下.....
------解决方案--------------------
换一下顺序看看呢。

var o = document.createElement( "input ");
// 这里执行 appendChild(o)
o.setAttribute( "type ", "checkbox ");
o.setAttribute( "name ", "test ");
------解决方案--------------------
IE 控件的 name 是只读的, 不能更改....
只能用 ID.