Jquery engine ajax验证

本人搜索了Jquery engine ajax用法,基本上都是前篇一律的文章,而且很多都是不尽人意的,所以特来 写了一篇。

特别提示:使用的Jquery Engine版本是2.6.2

1、前台页面

html表单如下

 <form action="" id="formId">
    <input type="text" name="code" id="code" placeholder="验证码" class="validate[required,ajax[ajaxUserBaseCall]]">
 </form>

引入的js库、css如下

<link rel="stylesheet" href="/css/validationEngine.css">
<script src="/js/jquery-1.8.2.min.js"></script>
<script src="/js/jquery.validationEngine-zh_CN.js" type="text/javascript"></script>
<script type="text/javascript" src="js/jquery.validationEngine.js"></script>

页面js如下

  $('#formId').validationEngine({
           promptPosition: 'centerRight',
       });

       $('#formId').submit(function () {
           $(this).validationEngine('validate');
       });

2、js文件

jquery.validationEngine-zh_CN.js文件如下

"ajaxUserBaseCall": {
                    "url": "/login/isRightIndentifyingCode",
                    // you may want to pass extra data on the ajax call
                  //  "extraDataDynamic" : ['#code'],
                    "alertText": "* 此名称已被其他人使用",
                    "alertTextOk": "* 此帐号名称可以使用",
                    "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
                },

3、服务器端处理

页面调用指定的url验证地址,传递两个参数,名称为:fieldId,fieldValue,对应的值为元素的ID和VALUE,这两个参数是默认传递的,服务器端根据这两个参数实现判断逻辑,然后返回包含三个元素的数组:元素ID、检查是否通过(true or false)、提示信息。注意,字符串需要使用双引号引起来。

java后台代码如下

   @ResponseBody
    @RequestMapping("isRightIndentifyingCode")
    public Object isright(String fieldId, String fieldValue, HttpServletRequest request){
        JSONArray jsonArray = new JSONArray();
        boolean flag = false;

        System.out.println(fieldId);
        System.out.println(fieldValue);

        String indentifyingCode = indentifyingCodeServiceI.getIndentifyingCode(1);
        if (fieldValue.equals(indentifyingCode)) {
            flag = true;
        }
        jsonArray.put(fieldId);
        jsonArray.put(flag);
        return jsonArray;
    }

1、这里值得注意的是,如果想要传递其它参数,使用的形式如下, "extraDataDynamic" : ['#email'],
其中email表示的是标签的id,表示传递的其它参数.

"ajaxUserBaseCall": {
                    "url": "/login/isRightIndentifyingCode",
                    // you may want to pass extra data on the ajax call
                 "extraDataDynamic" : ['#email'],
                    "alertText": "* 此名称已被其他人使用",
                    "alertTextOk": "* 此帐号名称可以使用",
                    "alertTextLoad": "* 正在确认名称是否有其他人使用,请稍等。"
                },

2、注意传递回去的是json数据。
我引入的jar包是:org.json.jar
gradle 依赖如下

// https://mvnrepository.com/artifact/org.json/json
compile group: 'org.json', name: 'json', version: '20160807'

maven依赖如下:

<!-- https://mvnrepository.com/artifact/org.json/json -->
<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20160807</version>
</dependency>

参考地址:
http://blog.csdn.net/jijunwu/article/details/19576345
http://code.ciaoca.com/jquery/validation-engine/

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 概要 64学时 3.5学分 章节安排 电子商务网站概况 HTML5+CSS3 JavaScript Node 电子...
    阿啊阿吖丁阅读 9,920评论 0 3
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,526评论 0 2
  • 1.JQuery 基础 改变web开发人员创造搞交互性界面的方式。设计者无需花费时间纠缠JS复杂的高级特性。 1....
    LaBaby_阅读 1,289评论 0 1
  • 第一章 入门 基本功能:访问和操作 dom 元素,控制页面样式,对页面的事件处理,与ajax完美结合,有丰富的插件...
    X_Arts阅读 1,173评论 0 2
  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,704评论 0 7

友情链接更多精彩内容