我如何交换两个文本框的ID?
我有两个文本框,
<input type="text" id="name1" name="fname"/>
和
<input type="text" id="name2" name="lname"/>
以编程方式通过javascript,我想交换两个文本框的ID name1 和 name2 。请建议正确的方法来实现这一目标。感谢。
答案 0 :(得分:3)
function swapId( elem1, elem2 ) {
var temp = elem1.id;
elem1.id = elem2.id;
elem2.id = temp;
}
swapId( document.getElementById('name1'), document.getElementById('name2') );
这是一个非常简化的例子。应该有更多的检查,如果传入的值实际上是对实际DOM节点等的引用。但这将正常工作。
答案 1 :(得分:2)
交换ID就像获取对两个文本框的引用一样简单,然后分配您希望它们具有的ID。虽然临时拥有两个具有相同ID的元素是无效的,但没有浏览器会阻止您这样做。
var fname = document.getElementById('name1');
var lname = document.getElementById('name2');
fname.setAttribute('id', 'name2');
lname.setAttribute('id', 'name1');
答案 2 :(得分:1)
试试这段代码......
var id1 = document.getElementById('name1');
var id2 = document.getElementById('name2');
id1.setAttribute("id", "name2");
id2.setAttribute("id", "name1");