我在提交表单时添加了一个事件监听器,这是代码:
var formo = document.getElementById("ing");
formo.addEventListener("submit", validation, false);
但我正在使用带有此代码的按钮标记提交表单:
var enviar = document.getElementById("submit_btn");
enviar.addEventListener("click", envioFormulario, false);
function envioFormulario() {
this.disabled = true;
this.value = "Sending";
this.form.submit();
}
用这个表单提交但是提交事件(第一行代码)似乎不起作用我能做些什么来使它工作?
答案 0 :(得分:1)
我同意@Mathletics的评论。单击时进行验证,如果通过验证则提交:
var enviar = document.getElementById("submit_btn");
enviar.addEventListener("click", envioFormulario, false);
function envioFormulario() {
if (validation()) {
this.disabled = true;
this.value = "Sending";
this.form.submit();
} else {
alert("Validation failed. Didn't submit");
}
}
答案 1 :(得分:0)
尝试在表单元素的“onsubmit”属性中设置函数名称。
答案 2 :(得分:0)
您的问题可能是防止出现默认行为。
您需要在处理程序函数中接收事件才能执行此操作。
function validation( event )
{
if ( event.preventDefault ) event.preventDefault();
event.returnValue = false;
// continue validating
}