我正在尝试在 HTML 表单上调用 jquery 函数。它不起作用,我想检查'key'字段长度是否不应小于 10。但看起来,函数 checkError 根本没有被调用。
<form action="/search" method="get" onsubmit="if (document.getElementById('key').value.length < 10) checkError();">
完整代码在这里:http: //jsfiddle.net/7UwsN/
我正在尝试在 HTML 表单上调用 jquery 函数。它不起作用,我想检查'key'字段长度是否不应小于 10。但看起来,函数 checkError 根本没有被调用。
<form action="/search" method="get" onsubmit="if (document.getElementById('key').value.length < 10) checkError();">
完整代码在这里:http: //jsfiddle.net/7UwsN/
问题是您的表单是在调用 return false 之前提交的。如果您使用 onsubmit 内联,则必须为 false;这样它就不会提交表单
你并没有真正正确地解决这个问题。您说您正在尝试在 HTML 代码中调用 jquery 函数,但实际上您正在执行 if 条件,然后可能会调用函数。
如果你将所有的处理都转移到一个 javascript 函数中,它会更好,而且干扰更少。如果您使用 jQuery,请查看设置submit()
事件函数,然后在那里进行处理。在此函数中返回true
然后提交表单,返回false
停止处理表单。
这也可能会以某种方式格式化事物,从而使调试任何类型的错误也变得更加容易......
例如:
jQuery:
$(document).ready(function() {
$("#formID").submit(function() {
//do some processing, call other functions, whatever
if(error)
return false;
else
return true;
});
});
HTML:
<form action="/search" method="get" id="formID">