/**
* @author sux
* @desc 登录
*/
Ext.onReady(function(){
Ext.QuickTips.init(); //错误信息显示必须
var loginForm = new Ext.form.FormPanel({
//title: '用户登录',
width: 290,
height: 300,
labelWidth: 50,
labelAlign: 'right',
defaults: {
width: 210,
layout: 'form',
xtype: 'panel'
},
//renderTo:属性指明属性指示EXT将表格渲染到什么地方,所以在HTML里应该有一个<div id='loginForm'></div>与之对应
renderTo: 'loginForm',
//ext常见布局
//ExtJs常见的布局方式有:border、form、absolute、column、accordion、table、fit、card、anchor
layout: 'table',
//设置为true时可以为panel添加背景色、圆角边框等,如下图
frame: true, //背景
//指定按钮的位置
buttonAlign: 'center',
bodyStyle: 'padding: 75px 0px 0px 50px; background-image: url(img/login.jpg)',
method: 'post',
//
//选定好layout布局后,其相应的配置属性就在这个对象上进行设置
layoutConfig:{
columns: 2
},
items: [{
items:[{
xtype: 'textfield',
fieldLabel: '用户名', //form布局才显示出labelName
name: 'username',
id: 'indexUserName',
allowBlank: false,//allowBlank:是否允许为空,默认为true
msgTarget: 'side',//提示框位置
blankText: '用户名不能为空',
regex: /^[a-zA-Z0-9_\u4e00-\u9fa5]+$/,
regexText: '不能输入特殊字符'
}],
colspan: 2
},{
items:[{
xtype: 'textfield',
fieldLabel: '密&nbsp;&nbsp;&nbsp;码',
regex: /^[a-zA-Z0-9_\u4e00-\u9fa5]+$/, //字母、数字、汉字、下画线
regexText: '不能输入特殊字符',
name: 'password',
inputType: 'password',
allowBlank: false,
blankText: '用户密码不能为空',
msgTarget: 'side'
}],
colspan: 2
},{
items:[{
xtype: 'textfield',
fieldLabel: '验证码',
blankText: '验证码不能为空',
name: 'validateCode',
allowBlank: false,
msgTarget: 'side',
width: 50,
listeners : {////添加监听事件 可以结合handler测试这两个事件哪个最先执行
specialkey : function(field, e) {//添加回车事件
if (e.getKey() == Ext.EventObject.ENTER) {
loginForm.getForm().getEl().dom.action="user_login.action";////再次设定action的地址
loginForm.getForm().getEl().dom.submit();
}
}
}
}],
width: 120
},{
items:[{
xtype: 'panel',
//:使用组件的html属性嵌入html代码,如果html代码中存在参数可以使用字符串拼接的方式拼接html代码。
html: '<img src="/hrmsys/validate" title="点击刷新" style="cursor:hand" id="validate" onclick="refreshCode()"/>'
}]
},{
layout: 'table',
layoutConfig:{
columns: 2
},
bodyStyle: 'margin-top: 10px;',
colspan: 2,
items: [{
xtype: 'button',
text: '确定',
style: 'margin-left: 30px;',
width: 60,
handler: function(){
loginForm.getForm().getEl().dom.action="user_login.action";
loginForm.getForm().getEl().dom.submit();
}
},{
xtype: 'button',
width: 60,
style: 'margin-left: 10px;',
text: '取消',
handler: function(){//添加事件
loginForm.getForm().reset();
}
}]
}]
});
Ext.getCmp("indexUserName").focus(true, true);//初始化页面后用户名获取焦点
}); function refreshCode(){
Ext.getDom('validate').src="/hrmsys/validate.jsp?code="+Math.random();
}

11.Extjs登录页面js的更多相关文章

  1. 11月10日上午ajax基础知识、用ajax做登录页面、用ajax验证用户名是否可用、ajax动态调用数据库

    1.ajax的基础知识 ajax是结合了jquery.php等几种技术延伸出来的综合运用的技术,不是新的内容.ajax也是写在<script>标签里面的. 如果使用ajax一定是要有1个处 ...

  2. 29. ExtJs - Struts2 整合(1) - 登录页面

    转自:https://yarafa.iteye.com/blog/729197 初学 ExtJS,在此记录下学习过程中的点点滴滴,以备不时只需,也希望能给跟我一样的菜鸟一些帮助,老鸟请忽略.如有不当之 ...

  3. 原生js验证简洁美观注册登录页面

    序 一个以js验证表单的简洁的注册登录页面,不多说直接上图 效果 主要文件 完整代码 sign_up.html 注册表单 <!DOCTYPE html> <html lang=&qu ...

  4. js登录页面的 回车事件

    js登录页面的 回车事件 js登录页面的 回车事件(2012-12-26 10:37:03)转载▼标签: jseventkey回车事件登录 分类: js.jquery  //回车事件 第一种docum ...

  5. 原生js+css实现重力模拟弹跳系统的登录页面

    今天小颖把之前保存的js特效视频看了一遍,跟着视频敲了敲嘻嘻,用原生js实现一个炫酷的登录页面.怎么个炫酷法呢,看看下面的图片大家就知道啦. 效果图: 不过在看代码之前呢,大家先和小颖看看css中的o ...

  6. Vue.js实现一个SPA登录页面的过程

    技术栈 vue.js 主框架 vuex 状态管理 vue-router 路由管理 一般过程 在一般的登录过程中,一种前端方案是: 检查状态:进入页面时或者路由变化时检查是否有登录状态(保存在cooki ...

  7. Vue.js写一个SPA登录页面的过程

    技术栈 vue.js 主框架 vuex 状态管理 vue-router 路由管理 一般过程 在一般的登录过程中,一种前端方案是: 检查状态:进入页面时或者路由变化时检查是否有登录状态(保存在cooki ...

  8. [Js插件]使用JqueryUI的弹出框做一个“炫”的登录页面

    引言 查看项目代码的时候,发现项目中用到JqueryUi的弹出框,可拖拽,可设置模式对话框,就想着使用它弄一个登录页面. 弹出框 在Jquery Ui官网可定制下载弹出框,下载和弹出框下载相关的js文 ...

  9. 【2017-06-29】在登录页面自动返回上次请求页面、Js获取table中的行数与列数

    一.在登录页面自动返回上次请求页面 Request.UrlReferrer比如 if (Request.UrlReferrer != null) { //如果能获取来路地址 Response.Redi ...

随机推荐

  1. Oracle 实现查询不区分大小写(SQL实现)

    转为小写  LOWER('ABC') 结果 abc转为大写  UPPER('aBc') 结果 ABC 将数据库字段数据和前台接受的值全部转换为大写或者小写 例: select * from table ...

  2. 集训第四周(高效算法设计)B题 (二分查找优化题)

    ---恢复内容开始--- Description   Before the invention of book-printing, it was very hard to make a copy of ...

  3. 【04】emmet系列之编辑器

     [01]emmet系列之基础介绍 [02]emmet系列之HTML语法 [03]emmet系列之CSS语法 [04]emmet系列之编辑器 [05]emmet系列之各种缩写 前端开发人员,常用的是s ...

  4. Qt5笔记之数据库(五)SQL表格模型QSqlTableModel

    教程网址:http://www.qter.org/portal.php?mod=view&aid=57 0.打开tablemodel.pro文件,加上: QT += coregui sql 注 ...

  5. Webdriver测试脚本2(控制浏览器)

    Webdriver提供了操作浏览器的一些方法,例如控制浏览器的大小.操作浏览器前进和后退等. 控制浏览器窗口大小 有时候我们希望能以某种浏览器尺寸打开,让访问的页面在这种尺寸下运行.例如可以将浏览器设 ...

  6. mysql 判断索引是否存在,存在则删除再创建索引(分表) 存储过程

    1.分表5数据量大,执行所有分表修改,不包括5 CREATE PROCEDURE deleteIndex()BEGINDECLARE corpId CHAR (16);DECLARE flag INT ...

  7. abs 暴力

    Given a number x, ask positive integer y≥2y≥2, that satisfy the following conditions: 1. The absolut ...

  8. POJ 3281_Dining

    题意: FJ准备了F种食物和D种饮料,每头牛都有喜欢的食物和饮料,并且每头牛都只能分配一种食物和饮料.问如何分配使得同时得到喜欢的食物和饮料的牛数量最多. 分析: 首先想到将牛与其对应的食物和饮料匹配 ...

  9. 我的arcgis培训照片8

    来自:http://www.cioiot.com/successview-554-1.html

  10. ppc_85xx-gcc -shared -fPIC liberr.c -o liberr.so

    fPIC作用于编译阶段,告诉编译器产生与位置无关代码(Position-Independent Code),   则产生的代码中,没有绝对地址,所有使用相对地址.故而代码能够被载入器载入到内存的随意 ...