我在javascript中有一个功能,可以使用按钮点击事件。我需要该函数仅在总表单验证返回true时才起作用。我正在使用jquery验证插件来验证表单。验证工作正常,但是当我点击按钮时,即使验证在那里,它仍然会进入函数内部。
我正在调用这样的函数:
document.getElementById('btnNext').addEventListener('click', handleFileSelect, false);
function handleFileSelect(evt) {
//My Code goes here
}
//This is my form..
<form id="someID">
<button id ="next" type="submit">
</form>
//And my validation will be as follows:
$("#posterForm").validate({
rules: {
//Here all the validation rules
},
messages: {
//Here all the error messages
}
});
答案 0 :(得分:1)
您正在混合使用dom和jquery事件侦听器。第document.getElementById('btnNext').addEventListener('click', handleFileSelect, false);
行正在侦听dom事件。你可以做到
$('#btnNext').on('click', function(evt){
//Validate the fields
var valid;
//set the valid field to true if the fields are true else set to false
if (!valid)
evt.preventDefault();
});
preventDefault doc详细说明了此功能。