为什么单击事件在单击按钮的第二次点击时不起作用?

时间:2019-03-27 14:41:25

标签: javascript dom-events

我的页面上的模态数量可变。显示模态时,我将一个单击事件添加到模态上的按钮。当我单击按钮时,将触发事件并显示下一个模式。但是,在第二个模式中,单击按钮时不会触发任何操作。

关于为什么事件监听器不会在第二次点击时触发的任何想法。
这是将事件侦听器添加到每个模式的代码。 onSubmission是执行一些ajax内容并隐藏当前模态,然后显示下一个模态的函数。

function addSubmitAction(formId) {
    console.log(formId);
    document.querySelector('#modal-submit').addEventListener('click', function _listener() {
        onSubmission({ 'id': formId });
        document.querySelector('#modal-submit').removeEventListener('click', _listener, true);
    }, true);
}

1 个答案:

答案 0 :(得分:0)

您是否需要在根节点上获得click事件?

        document.addEventListener('click', ({target}) => {
          if( target.id !== submitId ) return;
          /// your logic
        });

example