0
好的,这是我正在尝试做的......创建一个删除按钮以及在创建段落时使用DOM进行编辑。但是,删除按钮似乎总是被删去第一款,而不是删除相应的段落。这里是我的代码:DOM创建的删除按钮无法正常工作
Javascript:
function writePara()
{
var comment = document.getElementById("usrinput").value;
var newParagraph = document.createElement('p');
newParagraph.textContent = comment;
document.getElementById("updateDiv").appendChild(newParagraph);
var button = document.createElement("button");
var Btext=document.createTextNode("EDIT");
button.appendChild(Btext);
document.getElementById("updateDiv").appendChild(button);
button.onclick =
(
function()
{
var edit = prompt("Type to edit", "");
newParagraph.innerHTML = edit;
}
);
var button2 = document.createElement("button");
var Btext2=document.createTextNode("DELETE");
button2.appendChild(Btext2);
document.getElementById("updateDiv").appendChild(button2);
button2.onclick =
(
function()
{
var items = document.querySelectorAll("#updateDiv p");
if (items.length)
{
var child = items[0];
child.parentNode.removeChild(child);
}
button.parentNode.removeChild(button);
button2.parentNode.removeChild(button2);
}
);
addBr();
}
而且HTML:
<body onload="radio()">
<div id="paraButton" align="left">
<form><h3>Enter your Paragraph content here:</h3>
<textarea cols="20" rows="10" id="usrinput">Enter your texts here...</textarea>
</form>
<form id="one"><input type="button" value="Apply" onclick="writePara()"/></form>
<div id="updateDiv" name ="update"><h1>Space for Paragraph</h1> </div>
</div>
<div id="radioButton">
<h3>Type your radio button here:</h3>
<input type="text" name="option" id="option" value="Example 1" />
</br></br>
<button id="AddButton">Add</button>
<button id="RemoveButton">Remove</button>
</br></br></br></br></br></br></br></br>
<div id="updateDivRadio"><h1>Space for Radio Button</h1></div>
</div>
</body>
PS:在radio()
功能很好地工作,这只是我有问题的一部分。
这里有一个[的jsfiddle(http://jsfiddle.net/TaQQ5/)与您提供的代码 - 你介意加入一些代码,使工作的例子,所以我们可以找出问题? – kmoe
@kmoe感谢小提琴,但它没有正常运行我的整个代码的功能。例如,当我点击“应用”时,它会在输入区域的文本中创建一个新的段落,但在小提琴中没有任何反应。 – envyM6
@kmoe [My Fiddle](http://jsfiddle.net/nadz006/72ex5/show/)。 – envyM6