`
wiley
  • 浏览: 253750 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

注册验证代码整理(dwr+js)

阅读更多
百事通信息网


1、校验工具类
function ChkUtil() { }
//定位焦点
ChkUtil.onFocus = function (obj) {
 if (obj) {obj.focus();}
};
//删除串两边空格
ChkUtil.trim = function (str) {
 var patrn = /(^\s+|\s$)/g;
 return str.replace(patrn, "");
};
//校验是否为空(先删除二边空格再验证)
ChkUtil.isNull = function (str) {
 if (null == str ||  ""== ChkUtil.trim(str)) {
  return true;
 } else {
  return false;
 }
};
//校验是否全由数字组成
ChkUtil.isDigit = function (digit) {
 var patrn = /^[0-9]{1,20}$/;
 return patrn.test(digit);
};
//校验字符串:只能输入6-20个字母、数字、下划线
ChkUtil.isString6_20=function(str){
 var patrn=/^(\w){6,20}$/;
 return patrn.test(str);
};
//校验电话号码
ChkUtil.isMobile = function (mobile) {
 var patrn = /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
 return patrn.test(mobile);
};
//校验电邮地址
ChkUtil.isEmail = function (email) {
 var patrn = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;
 return patrn.test(email);
};

前端应用代码:
 <script type='text/javascript' src='../../dwr/interface/DWRUser.js'></script>
 <script type='text/javascript' src='../../dwr/engine.js'></script>
 <script type='text/javascript' src='../../dwr/util.js'></script>
 <script type='text/javascript' src='../js/chked.js'></script>
 <script type='text/javascript'>
//具体表单验证类
  var RegChked=function(){
      this.flg=true;
   this.userMsg="";
   this.pswdMsg="";
   this.userChk=function(username){
    if(!ChkUtil.isString6_20(username)){
     this.userMsg="用户名不正确!";
     this.flg=false;
    }else{
              DWRUser.isExist(username,callBack); 
    }
   };
   this.pswdChk=function(password,password2){
    if(!ChkUtil.isString6_20(password)){
     this.pswdMsg="密码不正确!";
     this.flg=false;
    }else{
              if(password!=password2){
               this.pswdMsg="密码不一致!";
               this.flg=false;
              }  
    }
   };
   var callBack=function(data){
    if(data){
     DWRUtil.setValue("userMsg","该用户名已经被注册!");
     this.flg=false; 
    }
   };
  }
//表单提交前调用函数(onsubmit="return onChked()")
  function onChecked(){
   var rc=new RegChked();
   rc.userChk($("username").value);
   rc.pswdChk($("password").value,$("password2").value);
   if(rc.flg){
    return true;
   }else{
    var errors={userMsg:rc.userMsg,pswdMsg:rc.pswdMsg};
    DWRUtil.setValues(errors);
    return false;
   }
  }
 </script>
<body>
 <html:form action="/userCenter?method=regedit" method="post" onsubmit="return onChked()" >
  <table border="0" align="center" width="500">
   <tr>
    <td width="100">用户名:</td>
    <td width="200">
     <html:text property="username"/>
    </td>
    <td>
     <div id="userMsg"></div>
    </td>
   </tr>
   <tr>
    <td>密码:</td>
    <td>
     <html:password property="password" />
    </td>
    <td>
     <div id="pswdMsg"></div>
    </td>
   </tr>
   <tr>
    <td>确认密码:</td>
    <td>
     <html:password property="password2" />
    </td>
    <td>
     <br>
    </td>
   </tr>
   <tr>
    <td colspan="2" align="center">
     <html:submit value=" 注册 " />
    </td>
    <td>
     <br>
    </td>
   </tr>
  </table>
 </html:form>
</body>


上述代码中存在异步问题,网上看了一些资料,有用信号量来同步的,不过用js信号量的算法怎么来定,没有头绪
分享到:
评论
1 楼 jonson 2007-09-13  
不知搂主是否有测试过。
我写了一个类似的发现了一些问题。
一下是我的代码:
//login class
var IsLogin=function(){
this.loginFlg=false;

this.isLogining=function(){
AJAXManager.isLogined(this.callBack);
};
this.callBack=function(data){ 
alert(data);
this.loginFlg=data;
loginFlag2=data;
    };
}

在callBack函数中的  this.loginFlg.  应该并不是指向  定义的  类属性变量。
所以导致赋值无效。

相关推荐

    DWR+Struts+spring+hibernate的订货系统

    DWR+Struts+spring+hibernate的订货系统,自己添加的dwr功能

    疯狂Ajax讲义:Prototype/jQuery+DWR+Spring+Hibernate整合开发(part01)

    《疯狂Ajax讲义:Prototype/jQuery+DWR+Spring+Hibernate整合开发》是疯狂Java体系丛书之一,前8章基本以XHTML、JavaScript和DOM编程为主,无须任何基础即可阅读;第9章以后的内容则需要掌握Spring、Hibernate等Java ...

    DWR+extjs+spring+hibernate

    在IT行业中,DWR(Direct Web Remoting)是一种JavaScript库,它允许Web应用程序与服务器端的Java代码进行实时交互,从而实现动态、富客户端的Web应用。EXTJS则是一个强大的JavaScript UI框架,提供了丰富的组件和...

    Spring+DWR+ibatis+jQuery+easyUI的框架例子

    Spring+DWR+ibatis+jQuery+easyUI的框架例子. 完全开放源代码,免费学习与使用。 可以完成基本的后台主界面,报表查询,数据查询,增加,修改等功能。 如果你要做一些报表,后台功能利用这个a框架就可以很方便实现。

    dwr+spring+hibernate模板.zip

    DWR是一款开源JavaScript库,它允许Java对象直接在浏览器中调用,实现Ajax(异步JavaScript和XML)的应用。DWR简化了客户端和服务器之间的通信,使得Web应用能够实时更新,提供更流畅的用户体验。通过DWR,开发者...

    Spring+Dwr+Hibernate整合项目

    可能的文件包括Spring配置文件(如`applicationContext.xml`)、Hibernate配置文件(如`hibernate.cfg.xml`)、DWR配置文件(如`dwr.xml`)、实体类、DAO层、Service层以及前端的JavaScript文件。通过这些文件,...

    dwr+hibernate实现的分页技术

    dwr可以简化JavaScript与Java之间的交互过程,使得前后端之间的通信更加便捷;而hibernate则是一种流行的Java持久化框架,它提供了一种面向对象的方式来操作数据库。将两者结合起来实现分页技术,不仅能有效提升数据...

    DWR+jquery2.x+easyUI1.3.x开发富客户端应用

    1. **简介**:jQuery EasyUI 是一款基于 jQuery 的 UI 框架,它提供了一整套丰富的 UI 组件,使得开发者无需编写复杂的 JavaScript 和 CSS 代码即可轻松创建出功能丰富的 Web 应用。 2. **特性**:EasyUI 提供了...

    源码分享-ibatis+dwr+jQuery

    **Direct Web Remoting (DWR)** 是一种让JavaScript可以调用服务器端Java对象的工具,实现了浏览器与服务器之间的双向通信。DWR使得前端能够实时获取服务器数据,提高应用的响应速度和交互性。在这个商城系统中,DWR...

    SSH+Dwr+Ajax框架实现的OA办公自动化系统

    2. **DWR的应用**:在OA系统中,DWR常用于实时数据显示、表单验证、动态图表生成等场景,提高系统的响应速度和用户体验。 **Ajax技术** AJAX(Asynchronous JavaScript and XML)是一种在不刷新整个页面的情况下与...

    dwr+spring集成配置

    在HTML或JavaScript中,通过DWR生成的JS API来调用远程方法。DWR会自动生成对应的JavaScript对象,例如上述示例中的`myService`对象。 ### 配置文件 DWR的配置文件通常是`dwr.xml`,但在与Spring集成时,配置主要...

    web开发实例(DWR+Struts2)

    Struts2的拦截器(Interceptor)机制可以实现通用的功能,如登录验证、权限控制等,提高代码复用性。 项目的实现步骤可能包括以下部分: 1. **数据库设计**:根据业务需求创建表结构,编写SQL脚本来创建和初始化...

    dwr+spring

    **DWR (Direct Web Remoting)** 是一个开源的Java库,它允许JavaScript在浏览器和Java服务器之间进行直接的、安全的、动态的通信。DWR的主要目标是简化Web应用程序的开发,通过提供一种简单的方式来调用服务器端的...

    dwr+maven+jetty

    DWR是一种JavaScript库,它允许在浏览器和服务器之间进行双向通信,实现Ajax应用。DWR通过动态创建JavaScript对象,使得Web页面可以调用服务器端的Java方法,仿佛它们是本地函数。这极大地增强了Web应用的交互性,...

    DWR+JS+很杂的东西

    在IT行业中,DWR (Direct Web Remoting) 是一个JavaScript库,它允许Web应用程序与服务器端的Java代码进行实时交互,无需刷新整个页面。DWR通过异步HTTP请求(Ajax)实现了这一功能,大大提升了用户体验。DWR的核心...

    hibernate+dwr+spring+jstl的demo

    在注册登录场景下,DWR可以用来实现实时验证用户输入,如用户名的可用性检查,以及在提交表单后的异步处理,提高用户体验。 3. **Spring**:Spring框架提供了一整套服务,包括依赖注入、AOP(面向切面编程)、事务...

    spring+hibernate+dwr+mysql实现二级联动

    ajax,spring,hibernate,dwr,实现二级联动

    ssh整合例子(spring3 + struts2 + hibernate4+dwr+ext+json)

    内含 ext+dwr+freemark+jasperreort+ireport+echance+oscache+velocite等技术 展示例子:http://zz563143188.iteye.com/blog/1462413 若要下载chm格式请到http://user.qzone.qq.com/563143188 程序源码下载地址10MB...

    MyBatis升级版Dwr+Spring

    Dwr是一个开源库,允许JavaScript和服务器端Java代码之间进行双向通信,实现Ajax功能。通过Dwr,前端可以调用服务器上的方法,获取或更新数据,无需页面刷新,提升了用户体验。 接着是Spring框架,它是一个全面的...

    DWR+SPRING 例子+DWR中文教材

    DWR (Direct Web Remoting) 是一个开源JavaScript库,它允许Web应用程序在客户端与服务器端之间进行实时的、异步的通信,极大地提升了Web应用的交互性和用户体验。DWR通过AJAX技术实现在浏览器和Java服务器之间直接...

Global site tag (gtag.js) - Google Analytics