即使验证已经

时间:2016-08-12 04:39:36

标签: javascript jquery

我在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
    }

});

1 个答案:

答案 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详细说明了此功能。