ExtJS4.2学习(22)登录界面

简介:

现在开始我们来慢慢完善这个系统,今天做一个登录界面,此套系统已经开始慢慢加入Java各种框架,或者后期我会自己定义合适的框架,让它可以完整的跑下来。

今天做的是用window包裹panel,panel再包裹tabpanel实现的:先来看看今天做的效果图:

login.jpg

about.jpg

login.jsp

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>  
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">  
< html >  
< head >  
< meta  http-equiv = "Content-Type"  content = "text/html; charset=UTF-8" >  
< title >登录-ExtJS4.2学习之路</ title >  
< link  href = "../ExtJS4.2/resources/css/ext-all-neptune-rtl.css"  rel = "stylesheet" >  
< link  href = "../ExtJS4.2/css/icon.css"  rel = "stylesheet" >  
< script  src = "../ExtJS4.2/ext-all.js" ></ script >  
< script  src = "../ExtJS4.2/locale/ext-lang-zh_CN.js" ></ script >  
< script  type = "text/javascript"  src = "../demo/js/login.js" ></ script >  
< style  type = "text/css" >  
.user{background: url(../ExtJS4.2/icons/user.png) no-repeat 2px 2px;}  
.key{background: url(../ExtJS4.2/icons/key.png) no-repeat 2px 2px;}  
.Userkey{background: url(../ExtJS4.2/icons/Userkey.png) no-repeat 2px 2px;}  
.key,.user,.Userkey{  
             background-color: #FFFFFF;  
             padding-left: 20px;  
             font-size: 12px;  
         }  
.bgimage {   
    background:url(../demo/image/logo.jpg ) no-repeat top;  
    position:absolute;  
}  
</ style >  
</ head >  
< body >  
     < div  id = "hello-tabs" >  
         <!-- <img border="0" width="430" height="60"    src="../demo/image/logo.jpg" /> -->  
     </ div >  
     < div  id = "aboutDiv"  class = "x-hidden"  
         style = 'color: black; padding-left: 10px; padding-top: 10px; font-size: 12px' >  
     思考者日记网ExtJs学习系统 v1.0< br />< br />  
     2013-2014 思考者日记网|束洋洋个人博客(沪ICP备13005070)< br />< br />  
     官方网站:< a  href = "http://www.shuyangyang.com.cn"  target = "_blank" >www.shuyangyang.com.cn</ a >  
     </ div >  
</ body >  
</ html >

其中自定义了一些CSS和自己加的DIV,为了实现上面的图片和tabpanel里的东西,再看看关键的login.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
Ext.onReady( function () {  
     var  userLoginPanel = Ext.create( 'Ext.panel.Panel' , {  
         bodyCls:  'bgimage' ,  
         border :  false ,  
         defaults:{  
             margin: '58 0'  
         },  
         items:{  
             xtype :  'tabpanel' ,  
             id :  'loginTabs' ,  
             activeTab : 0,  
             height : 180,  
             border :  false ,  
             items:[{  
                 title :  "身份认证" ,  
                 xtype :  'form' ,  
                 id :  'loginForm' ,  
                 defaults : {  
                     width : 260,  
                     margin:  '10 0 0 70'  
                 },  
                 // The fields  
                 defaultType :  'textfield' ,  
                 labelWidth : 40,  
                 items: [{  
                     fieldLabel:  '用户名' ,  
                     cls :  'user' ,  
                     name:  'username' ,  
                     labelAlign: 'right' ,  
                     labelWidth:65,  
                     maxLength : 30,  
                     emptyText: '请在这里填写用户名' ,  
                     maxLengthText :  '账号的最大长度为30个字符' ,  
                     blankText: "用户名不能为空,请填写!" , //错误提示信息,默认为This field is required!  
                     allowBlank:  false  
                 },{  
                     fieldLabel:  '密   码' ,  
                     cls :  'key' ,  
                     name:  'password' ,  
                     inputType: "password" ,  
                     labelWidth:65,  
                     labelAlign: 'right' ,  
                     emptyText: '请在这里填写密码' ,  
                     maxLengthText : '密码长度不能超过20' ,  
                     maxLength : 20,  
                     blankText: "密码不能为空,请填写!" , //错误提示信息,默认为This field is required!  
                     allowBlank:  false  
                 },{  
                     xtype: "combo" ,  
                     fieldLabel:  '角   色' ,  
                     cls :  'Userkey' ,  
                     name:  'role' ,  
                     labelAlign: 'right' ,  
                     labelWidth:65,  
                     store:[ "管理员" , "校领导" , "教职工" ], //数据源为一数组  
                     emptyText: '请选择角色.' ,  
                     blankText: "请选择角色!" , //错误提示信息,默认为This field is required!  
                     allowBlank:  false  
                 }, {  
                     id :  'id_reg_panel' ,  
                     xtype :  'panel' ,  
                     border :  false ,  
                     hidden :  true ,  
                     html :  '<br><span id=' messageTip ' style=' color:red '> </span>'  
                 }]  
             }, {  
                 title :  '关于' ,  
                 contentEl :  'aboutDiv' ,  
                 defaults : {  
                     width : 230  
                 }  
             }]  
         }  
     });  
       
     Ext.create( 'Ext.window.Window' , {  
         title :  'SHUYANGYANGExtJs学习系统' ,  
         width : 440,  
         height : 300,  
         layout:  'fit' ,  
         plain :  true ,  
         modal :  true ,  
         maximizable :  false ,  
         draggable :  false ,  
         closable :  false ,  
         resizable :  false ,  
         items: userLoginPanel,  
         // 重置 和 登录 按钮.  
         buttons: [{  
             text:  '重置' ,  
             iconCls :  'Wrench' ,  
             handler:  function () {  
                 Ext.Msg.alert( '提示' '重置!' );  
             }  
         }, {  
             text:  '登录' ,  
             iconCls :  'User' ,  
             handler:  function () {  
                 Ext.Msg.wait( "请等待" "温馨提示" , {  
                     text: '正在登录……'  
                 });  
             }  
         }]  
     }).show();  
});

这里大家可以自由发挥,加一些触发事件来实现与后台交互,这里我就不多写了,后续完善的时候我会写出来,因为现在静态要实现的太多了,慢慢来。看到不懂的属性或者地方,大家就去查API吧,相信学了这么久,这个你应该会的吧?



本文转自shyy8712872 51CTO博客,原文链接:http://blog.51cto.com/shuyangyang/1570902,如需转载请自行联系原作者

相关文章
|
11月前
|
数据安全/隐私保护 索引
零基础VB教程050期:QQ2018登录界面动画开发
零基础VB教程050期:QQ2018登录界面动画开发
|
12月前
使用elementUI制作简易登录页面
使用elementUI制作简易登录页面
235 0
|
12月前
Odoo 美化登录界面
Odoo 美化登录界面
250 0
|
12月前
|
移动开发 前端开发 Java
【HTML5】登录页面制作简易版
本文讲解:登录页面制作简易版
|
JavaScript 前端开发 Java
关于登入界面提示实践案例(JSP + JavaScript)
有一段文本,属性隐藏,当我们鼠标点击框时(点击事件)来验证输入的长度,如果符合就继续隐藏,如果不符合就取消隐藏。
119 0
关于登入界面提示实践案例(JSP + JavaScript)
|
Web App开发 测试技术 数据安全/隐私保护
|
前端开发 JavaScript 数据安全/隐私保护
|
Web App开发 JavaScript 前端开发