В приведенной ниже программе я пытаюсь добавить и удалить дочерние узлы в/из родительского узла в документе html.узел html не добавляется
Я пытаюсь сделать это:
После Node 1
кнопка нажата, проверьте, если родитель ребенка node2
. Если да, удалите node2
ребенка из родителя. Затем добавьте node1
.
Моя программа работает нормально, если node2
уже присутствует в детстве. Однако, если node2
еще не child
, то node1
не добавляется вообще. Где я иду не так?
Ниже приведен код:
<!DOCTYPE HTML>
<html lang="en-US">
<head>
<title>practice</title>
</head>
<body>
<div>
<h3>Nodes ...</h3>
<br/><br/>
<button type="button" onclick="func_node1()">Node 1</button>
<button type="button" onclick="func_node2()">Node 2</button>
<br/><hr/>
<div id="display">
<p id="p1"></p>
</div>
</div>
<script>
/*Create two nodes 'node1' and 'node2' with some text in them*/
var node1 = document.createElement("p");
var node1_text = document.createTextNode("ONE 1 NODE");
node1.appendChild(node1_text);
var node2 = document.createElement("p");
var node2_text = document.createTextNode("TWO 2 NODE");
node2.appendChild(node2_text);
/*Issue in this function*/
function func_node1()
{
var parent = document.getElementById("display");
var children = parent.childNodes;
var i;
for(i=0; i<children.length; i++)
{
if(children.item(i).id == 'node2');
{
parent.removeChild(node2);
break;
}
}
parent = document.getElementById("display");
parent.appendChild(node1);
//document.write("CLEAR");
}
function func_node2()
{
var parent = document.getElementById("display");
parent.appendChild(node2);
}
</script>
</body>
Действия по воспроизведению проблемы:
- Откройте HTML-страницу, а затем нажмите на кнопку
Node 1
.
спасибо за указание другие проблемы ... – sps
Добро пожаловать, рад, что я мог бы помочь –