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

Ext验证码例子

    博客分类:
  • Ext
阅读更多

login.js
 Ext.form.Myimg = Ext.extend(Ext.BoxComponent, { 
     onRender : function(ct, position){ 
         if(!this.el){ 
          this.el = document.createElement('img');             
            this.el.src = this.src; 
            if(this.forId){ 
              this.el.setAttribute('htmlFor', this.forId); 
            } 
         } 
          Ext.form.Label.superclass.onRender.call(this, ct, position); 
    } 
  }); 
 
Ext.reg('myimg', Ext.form.Myimg); 
  
   
 Login = function(){ 
   var win, 
        form, 
       submitUrl = 'login.action'; 
   function onSubmit(){ 
        form.submit({ 
             waitMsg: '正在提交数据,请等待...', 
            reset: true, 
           success: Login.Success, 
            scope: Login 
        }); 
    } 
       
    return{ 
       Init:function(){ 
           Ext.QuickTips.init(); 
              
           var logoPanel = new Ext.Panel({ 
                baseCls: 'x-plain', 
                id: 'login-logo', 
                region: 'center' 
             }); 
             
            var formPanel = new Ext.form.FormPanel({ 
                baseCls: 'x-plain', 
                 baseParams: { 
                    module: 'login' 
                 }, 
               defaults: { 
                    width: 200 
                 }, 
                 defaultType: 'textfield', 
               frame: false, 
              height: 100, 
               id: 'login-form', 
                items: [{ 
                    fieldLabel: '登录帐号', 
                  name: 'user' 
                },{ 
                  fieldLabel: '登录密码', 
                    inputType: 'password', 
                    name: 'pass' 
                 },{ 
                    fieldLabel:'效 验 码', 
                    name:'imgCode', 
                     itemCls:'sex-male', //向左边浮动,处理控件横排    
                    clearCls:'allow-float' 
                },{ 
                    xtype:'myimg', 
                    src:'img.action', 
                    width:100, 
                    height:22, 
                   itemCls:'sex-female', //向左浮动,处理控件横排    
                    clearCls:'allow-float' 
               }], 
                 labelWidth:120, 
              region: 'south', 
                url: submitUrl 
            }); 
        
           win = new Ext.Window({ 
               buttons: [{ 
                    handler: onSubmit, 
                    scope: Login, 
                   text: '登 录' 
                }], 
                 buttonAlign: 'right', 
               closable: false, 
                draggable: false, 
                height: 250, 
               id: 'login-win', 
                keys: { 
                    key: [13], // enter key 
                     fn: onSubmit, 
                   scope:this 
                }, 
               layout: 'border', 
                minHeight: 290, 
               minWidth: 530, 
                plain: false, 
               resizable: false, 
                items: [ 
                    logoPanel, 
                     
                   formPanel 
                ], 
               title: 'Login', 
                 width: 530 
             }); 
              
            form = formPanel.getForm(); 
             
            formPanel.on('render', function(){ 
                var f = form.findField('user'); 
               
               if(f){ 
                    f.focus(); 
                } 
            }, this, {delay: 200}); 
            
            win.show(); 
         }, 
         
        Success: function(f,a){ 
             if(a && a.result){ 
                win.destroy(true); 
                // get the path 
                var path = window.location.pathname, 
                    path = path.substring(0, path.lastIndexOf('/') + 1); 
                    
               // set the cookie 
                set_cookie('sessionId', a.result.sessionId, '', path, '', '' ); 
                 set_cookie('memberName', a.result.name, '', path, '', '' ); 
                set_cookie('memberGroup', a.result.group, '', path, '', '' ); 
               // redirect the window 
                 window.location = a.result.path; 
            } 
        } 
    }; 
 }(); 
 //Form提交完成后 
 Ext.BasicForm.prototype.afterAction=function(action, success){ 
    this.activeAction = null; 
    var o = action.options; 
     if(o.waitMsg){ 
         Ext.MessageBox.updateProgress(1); 
        Ext.MessageBox.hide(); 
     } 
     if(success){ 
       if(o.reset){ 
            this.reset(); 
         } 
        Ext.callback(o.success, o.scope, [this, action]); 
        this.fireEvent('actioncompleted', this, action); 
     }else{ 
         Ext.callback(o.failure, o.scope, [this, action]); 
        this.fireEvent('actionfailed', this, action); 
    } 
 } 

login.html
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%> 
 
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
 <html> 
  <head> 
     <title>系统登录</title> 
     <link rel="stylesheet" type="text/css" href="css/ext-all.css" /> 
    <script type="text/javascript" src="javaScript/extjs/ext-base.js"></script> 
    <script type="text/javascript" src="javaScript/extjs/ext-all.js"></script> 
    <script type="text/javascript" src="javaScript/extjs/ext-lang-zh_CN.js"></script> 
    <!-- LOGIN --> 
     <script type="text/javascript" src="system/login/cookies.js"></script> 
    <link rel="stylesheet" type="text/css" href="css/desktop.css" /> 
     <link rel="stylesheet" type="text/css" href="system/login/login.css" /> 
   <script type="text/javascript" src="system/login/login.js"></script> 
  </head> 
  <style type="text/css" media="all">    
     .allow-float {clear:none!important;} /* 允许该元素浮动 */   
    .stop-float {clear:both!important;} /* 阻止该元素浮动 */   
    .sex-male {float:left;}    
    .sex-female {float:left;padding:0 0 0 20px;}    
   .age-field {float:left;padding:0 0 0 58px;*padding:0 0 0 50px!important;*padding:0 0 0 50px;}    
</style>    
   <body> 
    <div id='loginDialogId'></div> 
  </body> 
</html> 

分享到:
评论

相关推荐

    SSH和Ext整合 更新

    模拟登录界面,加入验证码,xml树的实现 Ext viewport框架 等好多东西,都是自己在学习ext中想到什么就做个例子,只是有点乱,共同研究共同进步 在javascript目录下加入Ext2.0 在lib下加入所需要的jar 数据库是...

    关于JS 的一些特效例子

    6. **计时器与倒计时**:可以创建定时执行的任务,如倒计时,用于活动预告或者验证码过期提醒。 7. **表单验证**:JavaScript可以实时验证用户输入,如邮箱格式、电话号码格式,确保数据的准确性和安全性。 8. **...

    Extjs学习过程中写软键盘的列子~

    `windowLogin.js`很可能是定义了一个登录窗口的类,这个窗口可能包含一个输入框和一个按钮,用户可以通过软键盘输入密码或验证码。在ExtJS中,我们可以创建一个`Ext.window.Window`实例,然后添加所需的组件,比如`...

    ExtJs登陆验证(ASP后台)

    例如,可以使用`Ext.form.Panel`创建表单,`Ext.form.field.Text`定义文本输入字段,以及`Ext.Button`定义提交按钮。 登录验证的过程通常包括以下几个步骤: 1. 用户在前端填写用户名和密码。 2. 用户点击登录按钮...

    易语言-易语言调用腾讯云发送短信例子

    如果您的模板是"你的验证码是{1}",则"msg"字段可赋值为:"你的验证码是xxxx"。(其中"xxxx"为下发的验证码) 如果您有多个短信签名,请将需要的短信签名放在短信内容前面 例如您有"【腾讯科技】","【腾讯云】"两个...

    Extjs4-学习指南

    - **图片验证码的实现**:增加安全验证机制。 - **TabPanel**:创建标签页布局。 - **选项卡 (tabs)**:实现动态切换不同的页面。 - **上传文件**:实现文件上传功能。 - **ComponentQuery**:使用组件查询 API 进行...

    Extjs4学习指南

    - **图片验证码的实现**:添加验证码功能以提高安全性。 - **TabPanel**:创建标签面板来组织多个相关视图。 - **选项卡(Tabs)**:实现选项卡的动态添加和删除功能。 - **上传文件**:实现文件上传功能。 - **...

    SSH客户端操作Linux

    在你输入“yes”之前呢,最佳的选择或许是联系你的系统管理员来分析为什么会出现主机验证码改变的信息,核对主机验证码是否正确。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 localhost$ ssh -l jsmith remotehost....

    7-29专业级回忆.docx

    在例子中,`s1.replaceAll("\\d", "456")`尝试替换所有数字,但由于`\d`是正则表达式中的数字匹配符,结果输出了未预期的结果。`Pattern.quote("\\d")`用于转义正则表达式的特殊字符,所以`s1.replaceAll(Pattern....

    .htaccess

    百度首页 | 百度空间 | 登录 广告停放提高网站流量,centos学习 主页博客相册|个人档案 查看文章 .htaccess怎么用2007-05-16 14:04(文章来源)...

Global site tag (gtag.js) - Google Analytics