JSP中交换节点有个问题。
就是他cloneNode 复制出来的节点是没有父节点的。
var aNode2 = aNode.cloneNode(true);//aNode 没有父节点 alert(aNode2.parentNode);
所以交换节点的时候,不能把aNode2作为replaceChild的目标
function swap(aNode,bNode){ var aParent = aNode.parentNode; var bParent = bNode.parentNode; if(aNode && bNode){ var aNode2 = aNode.cloneNode(true);//aNode 没有父节点 bParent.replaceChild(aNode2,bNode); aParent.replaceChild(bNode,aNode); } } window.onload = function () { var bjNode = document.getElementById("bj"); var rlNode = document.getElementById("rl"); swap(bjNode,rlNode); }