无废话ExtJs 入门教程七[登陆窗体Demo:Login]

在这节我们通过前几节讲的内容做一个登陆页面,把前几节讲的内容贯穿一下。
1.代码如下:

1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2 <html xmlns="http://www.w3.org/1999/xhtml">
3 <head>
4 <title></title>
5 <!--ExtJs框架开始-->
6 <script type="text/javascript" src="/Ext/adapter/ext/ext-base.js"></script>
7 <script type="text/javascript" src="/Ext/ext-all.js"></script>
8 <link rel="stylesheet" type="text/css" href="/Ext/resources/css/ext-all.css" />
9 <style type="text/css">
10 .loginicon
11 {
12 background-image: url(image/login.gif) !important;
13 }
14 </style>
15 <!--ExtJs框架结束-->
16 <script type="text/javascript">
17 Ext.onReady(function () {
18 //初始化标签中的Ext:Qtip属性。
19 Ext.QuickTips.init();
20 Ext.form.Field.prototype.msgTarget = 'side';
21 //提交按钮处理方法
22 var btnsubmitclick = function () {
23 if (form.getForm().isValid()) {
24 //通常发送到服务器端获取返回值再进行处理,我们在以后的教程中再讲解表单与服务器的交互问题。
25 Ext.Msg.alert("提示", "登陆成功!");
26 }
27 }
28 //重置按钮"点击时"处理方法
29 var btnresetclick = function () {
30 form.getForm().reset();
31 }
32 //提交按钮
33 var btnsubmit = new Ext.Button({
34 text: '提 交',
35 handler: btnsubmitclick
36 });
37 //重置按钮
38 var btnreset = new Ext.Button({
39 text: '重 置',
40 handler: btnresetclick
41 });
42 //用户名input
43 var txtusername = new Ext.form.TextField({
44 width: 140,
45 allowBlank: false,
46 maxLength: 20,
47 name: 'username',
48 fieldLabel: '用户名',
49 blankText: '请输入用户名',
50 maxLengthText: '用户名不能超过20个字符'
51 });
52 //密码input
53 var txtpassword = new Ext.form.TextField({
54 width: 140,
55 allowBlank: false,
56 maxLength: 20,
57 inputType: 'password',
58 name: 'password',
59 fieldLabel: '密 码',
60 blankText: '请输入密码',
61 maxLengthText: '密码不能超过20个字符'
62 });
63 //验证码input
64 var txtcheckcode = new Ext.form.TextField({
65 fieldLabel: '验证码',
66 id: 'checkcode',
67 allowBlank: false,
68 width: 76,
69 blankText: '请输入验证码!',
70 maxLength: 4,
71 maxLengthText: '验证码不能超过4个字符!'
72 });
73 //表单
74 var form = new Ext.form.FormPanel({
75 url: '******',
76 labelAlign: 'right',
77 labelWidth: 45,
78 frame: true,
79 cls: 'loginform',
80 buttonAlign: 'center',
81 bodyStyle: 'padding:6px 0px 0px 15px',
82 items: [txtusername, txtpassword, txtcheckcode],
83 buttons: [btnsubmit, btnreset]
84 });
85 //窗体
86 var win = new Ext.Window({
87 title: '用户登陆',
88 iconCls: 'loginicon',
89 plain: true,
90 width: 276,
91 height: 174,
92 resizable: false,
93 shadow: true,
94 modal: true,
95 closable: false,
96 animCollapse: true,
97 items: form
98 });
99 win.show();
100 //创建验证码
101 var checkcode = Ext.getDom('checkcode');
102 var checkimage = Ext.get(checkcode.parentNode);
103 checkimage.createChild({
104 tag: 'img',
105 src: 'image/checkcode.gif',
106 align: 'absbottom',
107 style: 'padding-left:23px;cursor:pointer;'
108 });
109 });
110 </script>
111 </head>
112 <body>
113 <!--
114 说明:
115 (1)88行,iconCls: 'loginicon':给窗体加上小图标,样式在第12行定义。
116 (2)Ext.getDom('checkcode'):根据ID获取Dom。
117 (3)Ext.get(checkcode.parentNode):根据Dom获取父节点。
118 (4)checkimage.createChild():创建子节点,标签为<img src='image/checkcode.gif'..../>。
119 (5)form.getForm().isValid():校验表单的验证项是否全部通过。
120 (6)form.getForm().reset():重置表单。
121 -->
122 </body>
123 </html>

2.效果如下:

3.附件如下:
:login.gif
:checkcode.gif
无废话ExtJs 入门教程七[登陆窗体Demo:Login]的更多相关文章
- 无废话ExtJs 入门教程三[窗体:Window组件]
无废话ExtJs 入门教程三[窗体:Window组件] extjs技术交流,欢迎加群(201926085) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3 ...
- 无废话ExtJs 入门教程二十一[继承:Extend]
无废话ExtJs 入门教程二十一[继承:Extend] extjs技术交流,欢迎加群(201926085) 在开发中,我们在使用视图组件时,经常要设置宽度,高度,标题等属性.而这些属性可以通过“继承” ...
- 无废话ExtJs 入门教程二十[数据交互:AJAX]
无废话ExtJs 入门教程二十[数据交互:AJAX] extjs技术交流,欢迎加群(521711109) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C ...
- 无废话ExtJs 入门教程十七[列表:GridPanel]
无废话ExtJs 入门教程十七[列表:GridPanel] extjs技术交流,欢迎加群(201926085) 在Extjs中,GridPanel用于数据显示,即我们平时说的列表页.在本节中,我们先对 ...
- 无废话ExtJs 入门教程十五[员工信息表Demo:AddUser]
无废话ExtJs 入门教程十五[员工信息表Demo:AddUser] extjs技术交流,欢迎加群(201926085) 前面我们共介绍过10种表单组件,这些组件是我们在开发过程中最经常用到的,所以一 ...
- 无废话ExtJs 入门教程十四[文本编辑器:Editor]
无废话ExtJs 入门教程十四[文本编辑器:Editor] extjs技术交流,欢迎加群(201926085) ExtJs自带的编辑器没有图片上传的功能,大部分时候能够满足我们的需要. 但有时候这个功 ...
- 无废话ExtJs 入门教程十三[上传图片:File]
无废话ExtJs 入门教程十三[上传图片:File] extjs技术交流,欢迎加群(201926085) 1.代码如下: 1 <!DOCTYPE html PUBLIC "-//W3C ...
- 无废话ExtJs 入门教程十二[下拉列表联动:Combobox_Two]
无废话ExtJs 入门教程十二[下拉列表联动:Combobox_Two] extjs技术交流,欢迎加群(201926085) 不管是几级下拉列表的联动实现本质上都是根据某个下拉列表的变化,去动态加载其 ...
- 无废话ExtJs 入门教程十一[下拉列表:Combobox]
无废话ExtJs 入门教程十一[下拉列表:Combobox] extjs技术交流,欢迎加群(201926085) 继上一节内容,我们在表单里加了个一个下拉列表: 1.代码如下: 1 <!DOCT ...
随机推荐
- elasticsearch 口水篇(5)es分布式集群初探
es有很多特性,分布式.副本集.负载均衡.容灾等. 我们先搭建一个很简单的分布式集群(伪),在同一机器上配置三个es,配置分别如下: cluster.name: foxCluster node.nam ...
- ndk学习9: 动态使用共享库
动态使用共享库函数 dll_main 环境介绍 续上节代码 目录结构: android.mk如下: LOCAL_PATH := $(call my-dir) include $(CLEA ...
- Bootstrap 3学习笔记 -栅格
这是Bootstrap中非常基础一张表,但其实有这么容易掌握和理解吗? (1).对于col-md的div, 默认是垂直排列, 当视口(屏幕或浏览器的宽度)>992px,col-md-1的div块 ...
- iOS 中 为UIView添加背景图片
创建UIImage的方法有两种: UIImage *image = [UIImageimageNamed:@"image.jpg"];//这种不释放内存,要缓存 NSString ...
- git cherry-pick简介
本文编辑整理自: http://sg552.iteye.com/blog/1300713 http://web.mit.edu/bitbucket/git-doc/git-cherry-pick.tx ...
- gpt格式下通过U盘装win7系统
首先下好一个64位的win7系统,可以是ghost版的,然后放到你的U盘,在U盘的根目录下添加bootmgr.efi,bootx64.efi.shell.efi这几个文件,其它都不要管,重启,你就在g ...
- Strobogrammatic Number
Strobogrammatic Number I A strobogrammatic number is a number that looks the same when rotated 180 d ...
- 用Java计算某个日期100天后的日期
用Java计算日期时间,首先考虑到时间类,Java中提供的和时间日期相关的类里,有一个Calendar类,可以获取某个时间日期. 计算某个日期100天后的日期,思路如下: 1.先设定时间,例如2017 ...
- ACM/ICPC 之 数论-斐波拉契●卢卡斯数列(HNNUOJ 11589)
看到这个标题,貌似很高大上的样子= =,其实这个也是大家熟悉的东西,先给大家科普一下斐波拉契数列. 斐波拉契数列 又称黄金分割数列,指的是这样一个数列:0.1.1.2.3.5.8.13.21.34.… ...
- ffmpeg-20160512-git-bin
ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 S 下一帧 [ -2秒 ] +2秒 ; -1秒 ' +1秒 下一个帧 -> -5秒 f ...