参考链接:http://code.taobao.org/p/sztaotao/diff/5/trunk/code/src/main/webapp/webpage/modules/sys/roleForm.jsp

在进行项目测试时,发现对设备管理模块进行“修改”时,没有任何反应(即没有“保存成功”的字样,控制台也不打印输出报错),后来在网上找资料,发现在进行“远程验证时,在初始化时必须预先调用一次”。因为当你打开修改对话框,不做任何更改直接submit,这时会触发远程效验,远程效验耗时较长,这时submit函数在等待远程效验结果然后在提交,而layer对话框不会阻塞(就是上面所说的没有任何反应),会直接关闭,同时会销毁表单,因此submit没有提交就被销毁了,导致提交表单失败。

<script type="text/javascript">
var validateForm;
function doSubmit(){//回调函数,在编辑和保存动作时,供openDialog调用提交表单。
if(validateForm.form()){
$("#inputForm").submit();
return true;
} return false;
}
$(document).ready(function() {
validateForm = $("#inputForm").validate({
rules: {
           //设置了远程验证,在初始化时必须预先调用一次。            
code: {remote: "${ctx}/equip/equipment/checkEquipmentCode?oldEquipmentCode=${equipment.code}"},
         messages: {
code: {remote: "该设备编码已经存在!"},
},
submitHandler: function(form){
loading('正在提交,请稍等...');
form.submit();
},
errorContainer: "#messageBox",
errorPlacement: function(error, element) {
$("#messageBox").text("输入有误,请先更正。");
if (element.is(":checkbox")||element.is(":radio")||element.parent().is(".input-append")){
error.appendTo(element.parent().parent());
} else {
error.insertAfter(element);
}
}
});
//在ready函数中预先调用一次远程校验函数,是一个无奈的回避案。(刘高峰)
//否则打开修改对话框,不做任何更改直接submit,这时再触发远程校验,耗时较长,
//submit函数在等待远程校验结果然后再提交,而layer对话框不会阻塞会直接关闭同时会销毁表单,因此submit没有提交就被销毁了导致提交表单失败。
//inputForm 为提交表单的id
$("#inputForm").validate().element($("#code"));
   });
</script>

在jsp页面中设置了远程验证,在初始化时必须预先调用一次。的更多相关文章

  1. 在jsp页面中设置中序号

    首先要使用<c>标签的话需要先引入下面这句话: <%@ taglib prefix="c" uri="http://Java.sun.com/jsp/j ...

  2. 关于在jsp页面中使用/struts-tags标签库的迭代器时,从ValueStack获取参数使用EL的问题

    情况复原下: 通过valuestack存了个user,然后页面里可以${user.sex}拿到男.${user.sex=='男'}拿到ture 但是在使用 <s:if text="${ ...

  3. 关于在JSP页面中为什么一定要用${pageContext.request.contextPath}来获取项目路径,而不能用${request.contextPath}?

    这里的疑问在于pageContext和request都是JSP中的内置对象之一,为什么不直接用${request.contextPath}来获取项目路径? 出现这种疑问,其实是将JSP的内置对象和EL ...

  4. JSP页面中taglib的uri设置

    今天遇到这样一个问题,使用JAVA做了个WEB应用,其中用到一个自定义标签.该标签的class文件与tld(tld文件中,uri定义为:http://wallimn.iteye.com/myfuncs ...

  5. jsp页面中引用其他页面的方法

    初看这个标题....大家的感觉一定是好2啊.....博主一定要说jsp的动态引用(jsp:include)和静态引用(@include)了.介绍这两者区别的文章已经烂大街了..一搜一大把..博主竟然还 ...

  6. jsp页面中jstl标签详解

    JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实. JSTL ...

  7. 【转】jsp页面中jstl标签详解

    原文地址: JSLT标签库,是日常开发经常使用的,也是众多标签中性能最好的.把常用的内容,放在这里备份一份,随用随查.尽量做到不用查,就可以随手就可以写出来.这算是Java程序员的基本功吧,一定要扎实 ...

  8. 数据库中的记录通过servlet回显到jsp页面中(连接数据库或者查询參照:对数据进行增删改查)

    我们常常会用到通过图书的名称来查询图书那么这种话我们也就会使用到从数据库中搜索出数据而且载入到自己的Jsp页面中 这种话我们须要将从数据库中获取到的数据放进响应中然后通过%=request.getAt ...

  9. JSP页面中包含文件

    在JSP中,主要有3种功能可以将外部内容包含到JSP文档中jsp:include动作. jsp:include动作允许我们在请求期间将其他页面的输出包含进来.它的主要优点是:在被包含的页面发生更改时, ...

随机推荐

  1. 洛谷 P1356 数列的整数性 解题报告

    P1356 数列的整数性 题目描述 对于任意一个整数数列,我们可以在每两个整数中间任意放一个符号'+'或'-',这样就可以构成一个表达式,也就可以计算出表达式的值.比如,现在有一个整数数列:17,5, ...

  2. JS的作用域和闭包

    1.作用域 作用域是根据名称找变量的一套规则. 变量的赋值操作会执行两个动作,首先编译器会在当前作用域中声明一个变量(如果之前没有声明过),然后在运行时引擎会在作用域中查找该变量,如果能够找到就会对它 ...

  3. Android 如何从应用返回待机界面(HOME)

    Intent mIntent = new Intent(); mIntent.setAction(Intent.ACTION_MAIN); mIntent.addCategory(Intent.CAT ...

  4. bzoj 1017 : [JSOI2008]魔兽地图DotR

    比较难想的的一道树形dp. 看到这道题正常的思路应该是$f[i][j][k]$表示i这棵子树里买了j个i物品花费为k的最大收益. 但如果直接这么定义的话转移复杂度会很高,需要枚举j,枚举孩子,枚举k, ...

  5. Webpack + React 开发 01 HelloWorld

    1.项目依赖 安装所需要依赖的其它第三方开源库,项目依赖如下: "dependencies": { "babel-core": "^6.21.0&qu ...

  6. [postfix]转发邮件设置

    http://stackoverflow.com/questions/22537523/postfix-recipient-bcc-maps-multiple-recipients-how-to ht ...

  7. Android pm 命令详解

    一.pm命令介绍与包名信息查询 1.pm命令介绍 pm工具为包管理(package manager)的简称 可以使用pm工具来执行应用的安装和查询应用宝的信息.系统权限.控制应用 pm工具是Andro ...

  8. shell比较浮点数和整数

    今天有一个朋友忽然问我在shell中,如何比较浮点数和整数,倒是把我问的一愣,在工作中确实没有遇到这个场景.我们也知道,在shell中数字的计算通常都会转换成整数,比如说1.1和1会被认为是一样的.这 ...

  9. Lvs+Keepalived实现MySQL高可用

    LVS+Keepalived+MySQL高可用配置 本文所有配置前提是已实现MySQL双主备份(MySQL双主) 安装前的准备: VIP:192.168.0.201 Keepalived: Keepa ...

  10. vue项目post请求405报错解决办法。

    步骤一: 确定ajax语法没有错误. 步骤二: 与后台对接确认请求是否打到nginx上? 步骤三: 检查nginx是否配置了事件转发,比如我们的接口是在,当前地址的8100端口上,并且接口地址上有v1 ...