- 浏览: 1975548 次
- 性别:
- 来自: 哈尔滨
文章分类
- 全部博客 (188)
- java基础 (22)
- 经验+注意 (39)
- Oracle (34)
- javaScript (28)
- jquery (24)
- iBatIS (11)
- hibernate (8)
- struts1.x (1)
- spring (1)
- SVN (1)
- myeclipse (12)
- jbmp工作流 (1)
- 其他 (22)
- 杂谈 (4)
- struts2 (5)
- css (4)
- 正则表达式 (2)
- jstl标签 (4)
- Java Tree (2)
- Jboss (1)
- json (1)
- HttpURLConnection (1)
- Apache commons工具包 (1)
- groovy+grails (2)
最新评论
-
q2425533:
Java字符串倒序输出 + 数组的排序 -
变脸小伙:
今天也跟着学习了,用到了
struts2拦截器 获得请求方法名+获得请求参数 -
tuspark:
讲解的很不错。URLConnection类的内容也可以看这篇文 ...
HttpURLConnection详解 -
wolf746773350:
...
window.location.href/replace/reload()--页面跳转+替换+刷新 -
wolf746773350:
[/flash]
window.location.href/replace/reload()--页面跳转+替换+刷新
在项目中我使用了AJAX异步校验,来校验业务密码是否正确,本地环境下没有问题,但拉到真实环境,杭州服务器出现问题,给input框的blur()事件加了异步校验,点击保存按钮让所以input框失去焦点,业务密码正确,即可以通过,但是由于真实环境服务器返回数据的时间不一定,所以出现没返回数据那,就已经提交了表单。
#我的代码
<script type="text/javascript"> $(document).ready(function(){ var empAlterReason = true; var checkPassword2 = true; /*业务密码*/ $("#password2").blur(function(){ var password2 = $("#password2").val(); var textPassword2 = $("#textPassword2"); textPassword2.html(""); if( password2=='' ) { textPassword2.html("<font color='red'>业务密码不能为空!</font>"); checkPassword2 = false; return; } if( password2!='' ) { if( passValidate(password2) ) { textPassword2.html("<font color='red'>业务密码格式有误!</font>"); checkPassword2 = false; return; } else { var yz=$.ajax({ type:'post', url:'validatePwd2_checkPwd2?password2='+password2, data:{}, cache:false, dataType:'json', success:function(data){ if( data.msg =="false" ) //服务器返回false,就将validatePassword2的值改为pwd2Error,这是异步,需要考虑返回时间 { textPassword2.html("<font color='red'>业务密码不正确!</font>"); $("#validatePassword2").val("pwd2Error"); checkPassword2 = false; return; } }, error:function(){} }); } } $("#validatePassword2").val("pwd2Success"); checkPassword2 = true; return; }); /*修改原因*/ $("#alterReason").blur(function(){ var textRoleAlterReason = $("#textRoleAlterReason"); textRoleAlterReason.html(""); var alterReason = $("#alterReason").val(); if(alterReason=='') { textRoleAlterReason.html("<font color='red'><br>修改原因不能为空!</font>"); empAlterReason = false; return; } if(alterReason=='请输入') { textRoleAlterReason.html("<font color='red'><br>修改原因必填项!</font>"); empAlterReason = false; return; } if(illegalChar(alterReason)) { textRoleAlterReason.html("<font color='red'><br>修改原因不能包含非法字符!</font>"); empAlterReason = false; return; } empAlterReason = true; return; }); /*保存,点击事件*/ $("#mybutton1").click(function(){ var validatePassword2 = $("#validatePassword2").val(); $("input,textarea").blur();//这里触发焦点事件,但是服务器还没返回值,validatePassword2的值还没改变,还是'pwd2Success',但是代码还是按照顺序执行,所以下面的query()方法还是执行了 if(validatePassword2=='pwd2Success' && checkPassword2==true && empAlterReason == true){ query(); } }); }); function resetForm() { $("#alterReason").val(""); $("#password2").val(""); $("#textPassword2").html(""); $("#textRoleAlterReason").html(""); } function calBack(){ history.back(-1); } function query() { if(document.getElementById('roleName').value == ""){alert('角色名称不能为空!'); return false;}else{ } if(document.getElementById('alterReason').value == ""){alert('授权原因不能为空!'); return false;}else{ } // 获得被授权的信息总数 var len= document.getElementById("roleList").length; var tempop=""; for(var i=0;i<len;i++){ tempop = tempop +";"+ document.getElementById("roleList").options[i].value; } var confirm = "您确定修改权限信息吗?"; if(window.confirm(confirm)){ document.getElementById('privSelect').value=tempop; document.form1.action = "<%=path%>/Role_impower"; document.form1.submit(); alert("操作成功!"); } } </script>
#jsp页面代码
<tr> <td colspan="2" class="txtright" >业务密码:</td><td class="txtleft"> <input type="password" name="password2" id="password2" maxlength="18" class="inputbox"/> <input type="hidden" id="validatePassword2" value="pwd2Success"/> <span id="textPassword2"></span> </td> </tr> <tr> <td colspan="2" class="txtright"></td><td class="txtleft"> <input type="button" id="mybutton1" value="保 存" class="btn"/> <input type="button" value="重 置" onclick="resetForm()" class="btnalt"/> <input type="button" value="返 回" onclick="history.go(-1);" class="btnalt"/> </td> </tr> </table> </td> </tr>
#####注意:这问题本机、内网都没问题,因为速度很快,几乎不用考虑异步时间,但是真实服务器就不行了,返回响应时间可能会慢一些。。。 切记!!!
发表评论
-
即时搜索的input和propertychange方法
2018-01-16 16:59 1683做搜索功能的时候,经常遇到输入框检查的需求,最常见的是即时搜 ... -
java获得系统盘符(Windows、linux自动切换)
2017-12-22 16:08 2343做文件读写时,本机开发是windows系统,但服务器是li ... -
mysql 时间列自动插入当前日期时间
2012-05-09 13:46 3118用current_timestamp,不过这个默认值 ... -
java switch的使用+switch用String作为条件
2012-03-23 16:58 67324一、java switch的基本使用: /* int参数的s ... -
Java字符串倒序输出 + 数组的排序
2012-03-08 18:06 9267一、Java字符串倒序输出 方法一:利用 ... -
HTML转义字符
2012-02-23 14:53 2626HTML字符实体(Character Entit ... -
jQuery Ajax 实例 ($.ajax、$.post、$.get)
2012-02-09 10:43 300724Jquery在异步提交方面封装的很好,直接用AJAX非常麻烦, ... -
checkbox加onClick事件,ajax异步请求后台,$.ajax
2012-02-08 17:02 6759XXX平台要实现一个功能,公告弹出页面上使用复选框设置不再通知 ... -
jquery显示、隐藏div的方法
2012-01-16 13:27 23548###例子 $("#top_notice" ... -
js限制文件上传类型
2012-01-16 11:24 2219var name = $('#file').val(); v ... -
jquery 二级联动
2012-01-09 14:35 1237jquery 二级联动 -
Random()随机数+随机切换图片
2011-12-13 14:55 3068一、Random()随机数 转自:http://bl ... -
Request对象各种获得路径的方法+Request对象各种方法(.getRemoteAddr)
2011-12-13 14:43 9580用jboss发布的工程,测试request对象返回路径的方法, ... -
HttpURLConnection与URL---接口的应用
2011-11-26 10:14 1820一版XXX中的更新内存的接口应用: 一、定义一个有返回 ... -
ibatIS的<dynamic prepend="WHERE">原理,是判断前一个AND字母是否存在
2011-10-31 17:51 24742今天付出了惨痛的代价,调sqlMap文件调了一下午,杯具啊!! ... -
session详细解析(是否过期、失效时间)
2011-10-26 15:22 11207Session一直是我们做web项 ... -
insert into (select from)表复制+select into from表复制
2011-10-18 17:20 12080Insert INTO table(field1,field2 ... -
jsp、js、<a>的访问方式(绝对路径+相对路径)
2011-10-17 17:38 32885一、项目中应用: 1.PrivInterceptor ... -
jquery.cookies.2.2.0+半小时后自动跳转至sessionView.jsp提示session过期
2011-10-15 13:15 2779详细方法说明参见:http://code.google.com ... -
struts2拦截器 获得请求方法名+获得请求参数
2011-10-14 16:15 24340SSI框架为基础开发的,hulian平台 struts2拦截 ...
相关推荐
本工程有两种ajax异步校验注册时输入的username是否与数据库中的值重复,通过mybatis实现数据库,通过servlet或者struts2实现控制层,通过ajax,jquery,json,实现异步校验
用ajax,jQuery实现用户名的异步校验功能
项目采用MVC分层结构, 使用Ajax异步请求技术实现校验用户名唯一性的功能
图文验证码(Ajax异步校验)-源码出自明日科技
ajax技术基础演示程序,用户名校验,适用于初学者,大神可以绕过!
使用AJAX完成用户名是否存在异步校验: 1.事件触发: * onblur 2.编写AJAX代码: * 项Action中提交:传递username参数 3.编写Action * 接收username:模型驱动接收. 4.* 编写实体类 * User * User.hbm.xml * 配置到spring...
arr[0].posturl("/FormValidation/ajax/ajax-validation.asmx/user_isNull", "name"); arr[0].check("tname", "td1", "checkusername", true, true); //密码验证 arr[1] = new XQValidation(); arr[1]....
案例_Ajax_用户名异步校验 包括:源代码,sql语句,核心代码的笔记
主要为大家详细介绍了jquery easyUI中ajax异步校验用户名,感兴趣的小伙伴们可以参考一下
使用 jQuery Ajax 异步登录,并验证用户输入信息(maven),图文教程地址:https://blog.csdn.net/qq_40147863/article/details/85999375
Ajax实现验证码校验,不用跳转页面,直接刷新层。简单实用
用ajax实现简单登录验证,很粗糙的作业版。成功之后跳转界面完成
这篇文章主要介绍了关于ajax异步实现文件分片上传的相关内容,下面话不多说了,来一起看看详细的介绍吧 实例代码: <!DOCTYPE html> <html lang=en> <head> <meta charset=UTF-8> <title...
NULL 博文链接:https://yklovejava-163-com.iteye.com/blog/970966
我们也不需要浪费那么多感情,直到填写完那么多的信息之后在提示,在小编最近的项目中,就... 首先ajax完成用户名是否存在异步校验,那么我们该如何做呢?在这里,我们要由事件进行触发,也就是说,我们在用户名里面
实时的数据校验是AJAX技术的重要优点之一,Struts校验框架通过加入这种技术进一步丰富了其MVC,从而使得Web应用程序的开发效果更接近于桌面应用程序。 一、引言 校验框架的根本目的是实现域校验。在Web应用程序中...
ajax异步用户名校验,异步的javaScript和XML,在页面不刷新的情况下,实现前后台的数据交互.,1. 异步的用户校验 2. 自动填充(百度搜索) 3. 地图