JQuery名称属性在IE9中不起作用

JQuery名称属性在IE9中不起作用,jquery,internet-explorer-9,attr,Jquery,Internet Explorer 9,Attr,我试图克隆表的最后一行,并使用jquery指定新的名称和ID属性 JQuery函数 function addTableRow(table){ var $tr = $(table).find("tbody tr:last").clone(); $tr.find("input,select,textarea").attr('name', 'test'); $tr.find("input,select,textarea").attr('id', 'test'); $(

我试图克隆表的最后一行,并使用jquery指定新的名称和ID属性

JQuery函数

function addTableRow(table){

    var $tr = $(table).find("tbody tr:last").clone();
    $tr.find("input,select,textarea").attr('name', 'test');
    $tr.find("input,select,textarea").attr('id', 'test');
    $(table).find("tbody tr:last").after($tr);

}
PHP中的表行

echo '<tr onclick="alert(this.innerHTML);">';
echo '<td>Home: </td>';
echo '<td colspan="6"><input type="text" name="home'.$i.'" id="home'.$i.'" value="'.$row['homePhone'].'" style="width: 90px;"></td>';
echo '</tr>';
PHP外部的按钮

<button onclick="addTableRow(document.getElementById('tableID'));">Add</button>
上面的代码在chrome和firefox中运行得非常好。然而,在IE9中,只有id属性更改,而名称始终保持不变


导致这种行为的原因是什么?我该如何使我的代码工作?

甚至更好:在IE9中,更改输入的名称和id对我来说是唯一的。在这里,您试图将相同的ID分配给所有匹配的元素input、select、textarea。有趣的是,onclick=alertthis.name;当onclick=alertthis.innerHTML时,元素上给出更新的名称;行中显示了旧名称和更新的id。我假设直接来自元素本身的名称是正确的,但导致这种异常行为的原因是什么?@DIodeus这些只是占位符,可以更好地解释我的问题:小提琴…在IE9 id中更改输入的名称和id对我来说是唯一的。在这里,您试图将相同的ID分配给所有匹配的元素input、select、textarea。有趣的是,onclick=alertthis.name;当onclick=alertthis.innerHTML时,元素上给出更新的名称;在行上显示了旧名称和更新的id。我假设直接来自元素本身的名称是正确的,但是是什么导致了这种异常行为?@DIodeus这些只是占位符来解释我的问题