name还是改变了呀
<HTML>
<HEAD>
<META NAME="GENERATOR" Content="Microsoft Visual Studio 6.0">
<TITLE></TITLE>
</HEAD>
<BODY>
<p>
<input type="button" onclick="addrow()" value="ADD ROW">
</p>
<table id="table1">
<tr>
<td><input type="radio" name="radio1" onclick="alert(this.name)">Yes</td><td><input type="radio" name="radio1" onclick="alert(this.name)">No</td>
</tr>
</table></BODY>
</HTML>
<script>
var i = 1;
function addrow(){
var baseNode = table1.childNodes[0];
var cloneNode = baseNode.cloneNode(1);
i++;
//输出修改前的名字
alert("Before change name1 : " + cloneNode.children[0].children[0].children[0].name)
alert("Before change name2 : " + cloneNode.children[0].children[1].children[0].name)
table1.appendChild(cloneNode);
cloneNode.children[0].children[0].children[0].name="radio" + i;
cloneNode.children[0].children[1].children[0].name="radio" + i;
//输出修改后的名字
alert("After change name1 : " + cloneNode.children[0].children[0].children[0].name)
alert("After change name2 : " + cloneNode.children[0].children[1].children[0].name)
}
</script>

解决方案 »

  1.   

    你是不是觉的太难找用户点击的radio是哪个?
    其实你已经复制了节点,而且也区别开了Name 你只需要取当前点击对象就行了.
    <input type="radio" name="radio1" onclick="getradioName(this.name)">
    <input type="radio" name="radio1" onclick="getradioName(this.name)">funcction getradioName(radioname_)
    {
       alert(radioname_)//在这里你就可以使用了
    }
      

  2.   

    var radio = document.createElement("<input type=radio name=radio2>");
    table1.insertAdjacentElement("beforeEnd", radio);
      

  3.   

    To:bzscs(沙虫) 
    Name是改变了,可是你不觉得新添加的按钮和原来的按钮是一组的吗?我要求的结果是每一行一组,也就是说点击下面行的按钮不会影响到上边行的状态。
      

  4.   

    To: meizz(梅花雪)
    这种方法可以,可是我新创建的radio和原来的radio的属性就不完全一致了,因为实际中我的按钮的属性比较多,所以才考虑使用clone的方法。