this.submit()在表单提交事件中的行为

时间:2013-12-06 20:58:43

标签: javascript jquery

代码:                                    

        var formElement = document.querySelector('form');
        formElement.addEventListener('submit', function (e) {
            e.preventDefault();
            console.log('addEventListener event handler');
            this.submit(); // not causing recursive call.
        }, false)
    </script>

为什么不进行递归事件处理。我以为this.submit()会再次调用函数/事件处理程序(在它下面存在)。我没有遇到任何问题,但只是想知道它是如何工作的而不是递归调用。

1 个答案:

答案 0 :(得分:3)

在表单上调用.submit本身不会触发事件,它只是提交表单。因此,事件处理程序不会被执行,因为没有事件。