0

我正在创建一个从输入中获取值的 div,这个 div 包含一个完成按钮,我想用它来清除当前节点及其父节点。我正在使用事件侦听器来完成每次调用 add 函数时创建的变量,但我的问题是每次调用 add 函数时 eventlistener 都会自动触发。

        <div>
        <form method="post" action="/">
        <input  class="inputCls" type="text" name="item" id="input"  />
        <div class="addCls" onclick="add()" style="cursor:pointer">Add</div>
        </form>
                <script>        

                 function add() {
                        var inpElem = document.getElementById('input');
                        var doneElem = document.createElement('div');   
                        var divElem = document.createElement('div');
                        var done = document.createElement('div');   

                        if(inpElem.value == '') {

                            return false;
                            inpElem.value;
                        }
                        else {
                        document.body.appendChild(divElem);                      
                        divElem.className = 'alert';
                        divElem.innerHTML = inpElem.value;                      
                        divElem.appendChild(done);                  
                        done.className = "doneBtn"; 
                        done.innerHTML = "Done";

                         /*creating the closing button */
                        done.addEventListener("click",close(),false);
                        }

                }


                function close() {
                    alert('yaay');
                    /*removeChild(this.parentNode);*/
                }
        </script>

我应该如何添加 eventListener?

4

0 回答 0