Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/76.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中表单提交的事件侦听器,无提交操作_Javascript_Jquery_Html_Forms_Google Chrome Extension - Fatal编程技术网

javascript中表单提交的事件侦听器,无提交操作

javascript中表单提交的事件侦听器,无提交操作,javascript,jquery,html,forms,google-chrome-extension,Javascript,Jquery,Html,Forms,Google Chrome Extension,我一直在构建一个chrome扩展,我一直在使用内容脚本来监听表单提交事件。我在测试我的扩展,它工作得很好,直到我在一个不起作用的网站上测试。它不起作用的原因是表单按钮实际上不是一个带有提交操作的表单按钮。它实际上是一个标记,带有链接到“javascript:;”的href标记,因此不会触发提交事件。链接在表单中,它不是带有提交操作的按钮标签。我如何确保每当用户试图提交表单时,我的内容脚本都会触发?乍一看似乎很简单,但没有可靠的方法来实现您的要求 考虑这一点: document.getEleme

我一直在构建一个chrome扩展,我一直在使用内容脚本来监听表单提交事件。我在测试我的扩展,它工作得很好,直到我在一个不起作用的网站上测试。它不起作用的原因是表单按钮实际上不是一个带有提交操作的表单按钮。它实际上是一个
标记,带有链接到“javascript:;”的href标记,因此不会触发提交事件。链接在表单中,它不是带有提交操作的按钮标签。我如何确保每当用户试图提交表单时,我的内容脚本都会触发?

乍一看似乎很简单,但没有可靠的方法来实现您的要求

考虑这一点:

document.getElementById('myform').addEventListener('submit',函数(e){
e、 预防默认值();
log(document.getElementById('sometext').value);
console.log(“提交的表单”);
});
document.getElementById('notSubmitButton')。addEventListener('click',函数(e){
log(document.getElementById('sometext').value);
});

提交2份

我无法执行您的建议,因为它在许多不同的页面上以内容脚本的形式运行,因此我没有元素的ID。@Wayward分号这不是一个建议,而是一个演示为什么无法可靠地实现您尝试的操作的示例。