Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/454.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
JavaScript`addEventListener`with`submit`不';有些表格上没有人打电话_Javascript_Html_Addeventlistener - Fatal编程技术网

JavaScript`addEventListener`with`submit`不';有些表格上没有人打电话

JavaScript`addEventListener`with`submit`不';有些表格上没有人打电话,javascript,html,addeventlistener,Javascript,Html,Addeventlistener,我是JavaScript新手,我正在通过测试学习。最近我在玩addEventListener时注意到表单提交时并不总是调用回调。 为了确保错误不是我的html,我在stackoverflow等网站上进行了测试 我查看登录页面,页面加载后,我打开chrome控制台并执行以下代码: var form = document.getElementById('login-form'); form.addEventListener('submit', function(event) { window.

我是JavaScript新手,我正在通过测试学习。最近我在玩
addEventListener
时注意到表单提交时并不总是调用回调。 为了确保错误不是我的html,我在stackoverflow等网站上进行了测试

我查看登录页面,页面加载后,我打开chrome控制台并执行以下代码:

var form = document.getElementById('login-form');
form.addEventListener('submit', function(event) { 
  window.alert('form submission'); 
  event.preventDefault(); 
});
同样的代码在facebook登录页面上工作,id为
login\u form
,所以一定有什么东西阻止它被调用

我确保在chrome event Listeners tap中添加了事件侦听器,但是当我通过单击按钮或按enter键提交表单时,永远不会调用回调


我在控制台中没有收到任何错误,因此在我添加事件侦听器时表单已经存在,并且chrome已经显示它已被添加

有一个事件调用
onload
如果您不等待整个dom“装载”,它可能不会被触发

window.addEventListener(“onload”,函数(){
var form=this.document.querySelector(“表单”);
});

您是否将脚本放在页面底部?我在页面加载后将其添加到控制台中。加载表单是为了让我能用它的idtry窗口抓取它。onload=function(){}如果你的脚本在formI上面,我说我正在使用控制台!来吧,首先冷静和从容,这是一个帮助和交流知识的地方。提供未触发事件的表单部分和再次触发表单的部分(html和javascript)!我在加载页面后使用控制台。如果表单不存在,我将在控制台中得到错误。