Validate表单验证插件之异步操作

时间: 2018-04-11阅读: 1791标签: 表单

使用ajax方式进行验证某个元素的值(只是验证元素的值,而不是ajax方式提交表单),默认会提交当前验证的值到请求的地址,如果要提交其它的值,可以使用data选项。  

两种定义方式:


	$("#formId").validate({
	  rules:{
	    username:{
	      required:true,
	      remote:"/SSHWT/test/test.action"
	    }
	  },
	  messages:{
	    username:{
	      required:"用户名不能为空!",
	      remote:"用户名错误!"
	    }
	  }
	});					
						

	$("#formId").validate({
	  rules:{
	      username:{
		          /*验证规则*/
		          required:true,
	                  /*异步验证*/
		          remote:{
		              type:"POST",  /*提交方式  "POST"/"GET" */
		              url:"/SSHWT/test/test.action",  /*请求的地址*/
		              dataType:"json",  /*请求的数据类型*/
		              data:{  /*提交的数据*/
		                username:function(){
		                   return $("#username").val();
		                }
		              }
		          }
	        }
	    },
	    messages:{
		      username:{
			        required:"用户名不能为空!",
			        remote:"用户名错误!"  /*用户名在后台验证失败后显示的错误信息*/
		      }
	    }
	});					
						


后台代码


	package com.ss.demo.action;
	
	import org.slf4j.Logger;
	import org.slf4j.LoggerFactory;
	
	import com.ss.common.action.base.BaseAction;
	
	public class TestAction extends BaseAction {
		private static final Logger logger = LoggerFactory.getLogger(com.ss.demo.action.TestAction.class);
		
		private String username;
		private boolean result;
		
		public String test(){
			if(username.equals("admin")){
				logger.info("用户名正确");
				result = true;
			}else{
				logger.info("用户名错误");
				result = false;
			}
			return SUCCESS;
		}
		/*省略get set方法*/
	}					
						


struts配置文件代码


	<package name="test" extends="commonjson" namespace="/test">
		  <action name="test" method="test">
		    <result name="success" type="json">
		      <param name="root">result</param>
		    </result>
		  </action>
	</package>					 
						


validate的ajax表单提交


	$("#formId").validate({
	  rules:{
	    username:{
	      required:true
	    }
	  },
	  messages:{
	    username:{
	      required:"用户名不能为空!"
	    }
	  },
	  submitHandler:function(form){
		    $.ajax({
		      url:"xxx.action",
		      type:"POST",
		      dataType:"json",
		      data:{username:$("#username").val()},
		      success:function(msg){
		        alert(msg.data);
		      }
		    });
	  }
	});					
						

如上实例,validate的ajax请求是在表单验证后,提交表单。在submitHandler中定义。


站长推荐

1.云服务推荐: 国内主流云服务商,各类云产品的最新活动,优惠券领取。地址:阿里云腾讯云华为云

链接: http://www.fly63.com/article/detial/617

Html5中input新增的表单元素和属性介绍。

input标签主要用于Web表单的创建交互,以便接受来自用户的数据。 我们通过更改type属性的值,来实现不同的输入类型。这篇文章主要讲解html5中新增的表单属性。

javascript实现form表单onsubmit提交前验证

可以使用form表单的onsubmit方法,在提交表单之前,对表单或者网页中的数据进行检验。onsubmit指定的方法返回true,则提交数据;返回false不提交数据。

Js使用表单元素验证表单

最简单的HTML结构:网站最基础的就是注册,它是一个系统的交互基础;因为用户最后要去点击\\\"注册\\\"按钮,所以我们就在\\\"注册\\\"按钮上添加一个onclick事件属性,引用eg.regCheck()

表单提交type=submit和type=image的区别

type=image默认是sumbit,不用再添加onclick事件提交,否则会发生表单被提交两次的情况;在onclick事件中添加重置方法

使用Vue Composition API写出清晰、可扩展的表单

表单是前端开发中最棘手的部分之一,您可能会在其中发现很多混乱的代码。基于组件的框架,如 Vue.js,在提高前端代码的可扩展性方面做了很多工作,但是表单的问题仍然存在。

如何用 JS 一次获取 HTML 表单的所有字段 ?

要从HTML表单中获取所有字段,可以使用:this.elements或event.target.elements,只有在预先知道所有字段并且它们保持稳定的情况下,才能使用。使用FormData构建具有所有字段的对象,之后可以转换,更新或将其发送到远程API。

css input checkbox复选框控件 样式美化的多种方案

checkbox复选框可能是网站中常用的HTML元素,但大多数人并不满意它的默认样式,这篇文章就讲讲如何实现input checkbox复选框控件 样式美化效果。::before和::after伪元素的用法

react表单_受控组件与非受控组件

在 React 中,表单元素通过组件的 state 属性来自己维护 state,并根据用户输入调用setState()来进行数据更新,使 React 的 state 成为“唯一数据源”,被 React 以这种方式控制取值的表单输入元素就叫做“受控组件”。

在HTML中限制input 输入框只能输入纯数字

使用 onkeyup 事件,有 bug ,那就是在中文输入法状态下,输入汉字之后直接回车,会直接输入字母,使用 onchange 事件,在输入内容后,只有 input 丧失焦点时才会得到结果,并不能在输入时就做出响应,使用 oninput 事件,完美的解决了以上两种问题

js如何获取checkbox被选中的值?

通过复选框的name属性,遍历后将被选中的复选框的值输出:checkbox[index].nextSibling.nodeValue: 获取的是checkbox中标签包裹的文本值,建立一个数组,使用push 方法将被选中的元素保存到数组

点击更多...

内容以共享、参考、研究为目的,不存在任何商业目的。其版权属原作者所有,如有侵权或违规,请与小编联系!情况属实本人将予以删除!