添加一个按钮,该按钮会删除自身及其所连接的行

时间:2018-11-14 17:18:28

标签: javascript button

我对javascript不太了解。我一直试图编写一个脚本,该脚本添加一行文本,以及一个删除自身和附加文本行的按钮。 尽管我没有问题地管理文本部分,但是按钮却有很多问题。 每当我尝试添加将元素删除的功能添加到按钮时,脚本便会继续工作,但是创建的元素永远不会出现(似乎按钮会立即删除自身和文本,这是必须先单击才能发生的)。

var numberId=0;
function add(){
        	console.log("add");
            var te = document.getElementById("textInput").value;
            var d=document.createElement("tekst");
            var bu=document.createElement("button");
            var t=document.createTextNode(te);
            d.appendChild(t);
            d.id="a"+numberId;
            document.getElementById("hereGoesResult").appendChild(d);
            d.appendChild(bu);
            function placeholderFunction(){
        		console.log("placeholder");
                deletusTheTextus(d.id);
            }
            but.addEventListener("click",placeholderFunction());
        numberId++;
}
function deletsTheText(a){
        	console.log("delets");
            var elem = document.getElementById(a);
            elem.remove();
}
    <!DOCTYPE html>
    <html>
    <head>
      <meta http-equiv = "Content-type" charset = "utf-8">
      <title > Sample HTML5 File</title>
      <script src="scripts.js">
      </script>
    </head>
    <body>
    		<form>
    			Enter:
    			<input type="text" id="textInput"> <input type="button" value="Add" onclick="add()"><br>
    		</form>
    		<div id="hereGoesResult">
    		</div>
    </body>
    </html>

对不起,我是第一次发帖 (变量名很差,因为我不得不快速对其进行编辑,而我通常的变量太傻了,无法发布到stackoverflow上)

1 个答案:

答案 0 :(得分:0)

在尝试将其注册为事件处理程序时,请勿调用您的placeholderFunction。所以这个:

but.addEventListener("click", placeholderFunction())

应如下所示:

but.addEventListener("click", placeholderFunction);

接下来的事情是,您为按钮变量编写了bu,但是尝试将事件监听器附加到but。另外,请确保您在deletsTheText内部而不是placeholderFunction内致电deletusTheTextus;-)