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

AJAX请求后获得html放入指定位置
类似treeview
如下列代码 原来有3行 ,参数即为id
HTML code

<table>
<tr id="1"><td Onclick="GetChildrenNode(1)">1<td></tr>
<tr id="2"><td Onclick="GetChildrenNode(2)“>2<td></tr>
<tr id="3"><td Onclick="GetChildrenNode(3)”>3<td></tr>
</table>



当我点击2的时候 通过ajax请求获得到
HTML code

<tr id="21"><td>21<td></tr>



那照理说应把他放成这样
HTML code

<table>
<tr id="1"><td Onclick="GetChildrenNode(1)">1<td></tr>
<tr id="2"><td Onclick="GetChildrenNode(2)“>2<td></tr>
<tr id="21"><td>21<td></tr>
<tr id="3"><td Onclick="GetChildrenNode(3)”>3<td></tr>
</table>




这个要怎么放?

------解决方案--------------------
javascript版:
JScript code

<script type="text/javascript">
function insertAfter(newElement, targetElement){ 
var parent = targetElement.parentNode; 
if (parent.lastChild == targetElement) { 
// 如果最后的节点是目标元素,则直接添加。因为默认是最后 
parent.appendChild(newElement); 
} 
else { 
parent.insertBefore(newElement, targetElement.nextSibling); 
//如果不是,则插入在目标元素的下一个兄弟节点 的前面。也就是目标元素的后面 
} 
}
function GetChildrenNode(name)
{
var obj=document.getElementById(name);
var tr=document.createElement("tr");
var td=document.createElement("td");
td.appendChild(document.createTextNode("21"));
tr.appendChild(td);
insertAfter(tr,obj);
}
</script>