jquery.validate不用submit提交,用js提交的,怎么触发验证啊?

JavaScript023

jquery.validate不用submit提交,用js提交的,怎么触发验证啊?,第1张

用 button.click提交。

举例如下:

$("#form").validate()

$("#btn).click(function(){

 if($("#form").valid()){

  $("#form").submit()

}

})

jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求。

该插件捆绑了一套有用的验证方法,包括 URL 和电子邮件验证,同时提供了一个用来编写用户自定义方法的 API。所有的捆绑方法默认使用英语作为错误信息,且已翻译成其他 37 种语言。

扩展资料

query-validate 插件

基本用法:

1、页面中引入js依赖,因为validate是依赖jquery的需要先引入jquery。

2、表单校验,首先得有一个表单,即form标签,然后由于浏览器是通过name属性来提交表单数据的,所以需要给校验的控件都加上name属性。

rules里每个控件可以给多个验证方式,常用的有:

1、required 必填验证元素。

2、minlength(length) maxlength(length)。

3、rangelength(range)设置最小长度、最大长度和长度范围 [min,max]。

4、min(value) max(value) range(range) 设置最大值、最小值和值的范围。

5、email() 验证电子邮箱格式。

form表单的数据先由js判断处理,通过后再提交数据到后台。

1、js获取表单数据,根据实际情况判断是否符合规则。一般的判断是否为空,是否含有不安全字符,有就过滤掉(这一步也可以在后台处理)。

2、对于未通过的输入,向用户返回信息提示。

3、验证通过,提交数据到后台。

4、根据实际需求做处理.....

下面是一个简单的例子:

<form id="loginForm" action="" method="post">

    用户名: <input id="username" name="username" type="text" maxlength="16" />

    <br />

    <input id="go" type="button" value="提交" />

</form>

<script>

    var loginForm = document.getElementById('loginForm')

    var go = document.getElementById('go')

    go.onclick = function(){

        var username = loginForm.username.value

        //这里判断了用户名的输入不能为空,且长度为6-16位

        if(username && (typeof(username)!='undefined') && (username!=0) && (username.length>=6) && (username.length<=16)){

            //验证通过,提交表单数据

            loginForm.submit()

        }else{

            alert('输入不符合规则')

        }

    }

</script>

通常要先在前端对数据做处理得情况下,并不是用<input type="submit" />按钮,而是用<input type="button" />按钮,因为要先对数据进行处理再提交到后台;对于数据的判断验证,大多是使用正则表达式来判断的,虽然比较麻烦,不过如今浏览器对html5的兼容则省掉不少麻烦,新增的 input 类型可以满足一般的需求。