首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >验证不适用于jqBootstrapValidation和ajax

验证不适用于jqBootstrapValidation和ajax
EN

Stack Overflow用户
提问于 2013-03-25 22:35:24
回答 2查看 10.3K关注 0票数 3

在jQuery中,我在一个bootstrap表单上使用$.ajax方法和jqBootstrapValidation插件,但是验证不能正常工作。我正在使用

代码语言:javascript
复制
$('#updatenamebutton').click(function(event)
{
   event.preventDefault();
}

preventDefault正在停止验证,但我不想实际提交值,所以我使用event.preventDefault();。有什么想法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-04-15 01:10:44

您只需将ajax函数放入jqBootstrapValidation submitSuccess回调中。

您不需要在表单上绑定像" submit“或"click”这样的触发器,因为jqBootstrapValidation将处理提交事件。

以下代码不言自明:

代码语言:javascript
复制
$(function() {

  $('form[name="contact"]').find('input,select,textarea').not('[type=submit]').jqBootstrapValidation({

    submitSuccess: function ($form, event) {

      $.ajax({
        type: 'POST',
        url: $form.attr('action'),
        data: $form.serialize(),
        success: function(data)
        { 
          // just to confirm ajax submission
          console.log('submitted successfully!');
        }
      });

      // will not trigger the default submission in favor of the ajax function
      event.preventDefault();
    }

  });

});

有关该插件的更多详细信息,请访问:http://reactiveraven.github.io/jqBootstrapValidation/

票数 10
EN

Stack Overflow用户

发布于 2013-03-30 15:48:36

您必须执行如下操作:

代码语言:javascript
复制
$(function () { $("input,select,textarea").not("[type=submit]").jqBootstrapValidation({

    preventSubmit: false,
     submitSuccess: function (form, event) {
         event.preventDefault();
         dosubmit(form);
     },
     submitError: function (form, event, errors) {
         event.preventDefault();
         }
    }); } );
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15617589

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档