[英]Javascript onSubmit not returning false
我的onsubmit代码有问题。 我正在使用第三方公司的计算器,并且在提交表单时尝试触发一些JavaScript。 警报将触发,但是如果我将return设置为false,则仍将提交表单。
这是我在自己的环境中使用的代码行: document.getElementsByTagName("Form")[3].onsubmit = function () { alert('Test'); return false; };
document.getElementsByTagName("Form")[3].onsubmit = function () { alert('Test'); return false; };
我已经建立了这里的副本:(对于什么都理它不会加载在片段中,我复制相同的代码到我的服务器,它工作正常,所以这里是它在行动。 页 )
function myFunction() { document.getElementsByTagName("Form")[0].onsubmit = function () { alert('Test'); return false; }; }
<button onclick="myFunction()">Wait for script to load then press this button to add the onsubmit, then you can press calculate</button> <script src="https://calculators.symmetry.com/widget/js/salary.js?key=RHA0Slc2ZjEydjNkR0Y2eTEvOUxpZz09"></script>
我还没有弄清楚如何对脚本执行onload检测,因此这就是为什么您必须等待脚本加载然后按按钮插入javascript的原因。
谢谢你的帮助。
嗯..在您的解决方案中,您要在每次单击按钮时向表单添加一个新的事件处理程序。
而不是在页面加载时声明事件处理程序然后触发它
它应该是....
<script>
function onMyPageLoaded()
{
document.getElementsByTagName("Form")[0].onsubmit = function (e)
{
e.preventDefault();
// place your code here
return false; // cancel form submit
};
}
function doSomething() // use this ONLY if you intend to by-pass the native submit mechanism
{
document.getElementsByTagName("Form")[0].submit(); // trigger the event here
}
</script>
<body onload="onMyPageLoaded()">
<form>
<button type="submit">send</button>
</form>
</body>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.