Jquery:提交函数不在发送表单

时间:2015-03-18 01:47:50

标签: php jquery forms submit form-submit

我有一个表单,我需要使用jquery验证,以查看某些字段是否为空,但是当我使用此函数提交时:

$("#servicio-tecnico-1").submit(function( event ) {
        return validar_form();
});

当我提交函数时,它什么都不做,并且还使用空字段发送表单。 ¿我怎样才能让它发挥作用?

以防万一我在这里制作了一个JSFiddle

https://jsfiddle.net/ricardojriosr/hr97240j/1/

提前致谢

4 个答案:

答案 0 :(得分:1)

问题是你有2个变量ij在内部函数中声明,当在内部函数之外使用时抛出错误

$("#servicio-tecnico-1").submit(function (event) {
    var valid = validar_form();
    return valid;
});

然后

var i = 0;
$('.vfb-radio').each(function () {
    if ($(this).is(':checked')) {
        i = i + 1;
    }
});
var j = 0;
$('.vfb-checkbox').each(function () {
    if ($(this).is(':checked')) {
        j = j + 1;
    }
});

在上面的代码段中,i/j位于each循环内,并在循环外使用

演示:Fiddle


但是这两组代码可以简化为

var i = $('.vfb-radio:checked').length;
var j = $('.vfb-checkbox:checked').length;

演示:Fiddle

答案 1 :(得分:0)

您可以使用jquery validate执行验证然后提交。更多信息@ http://jqueryvalidation.org/validate/

$(".selector").validate({
submitHandler: function(form) {
// do other things for a valid form
form.submit();
}
});

答案 2 :(得分:0)

$("#servicio-tecnico-1").submit(function( event ) {

if ( validar_form() === true ) {
    //form is valid now submit it
    return;
  }
else {
      // prevent form submittal maybe return an error
      event.preventDefault();
}
});

答案 3 :(得分:0)

您可以使用jqueryvalidation之类的插件 这是有据可查的。还有一个演示here,包括单选按钮。