Extjs4开发笔记(四)——实现登录功能
2013-01-17 09:52
507 查看
上篇文章介绍了如何实现菜单功能(点击查看),但是有个问题,就是管理系统必须是登录后才会显示菜单,而且菜单还要实现不同权限有不同的菜单项,本文将实现这个功能。
首先,将server/MenuLoader.asp修改,增加管理员验证功能。即
这时,重新打开页面,由于有了基本的管理员验证,菜单不显示了。
接下来,开始制作登录,在view文件夹下建立Login.js,checkcode.js,其中Login.js实现登录功能,有用户名、密码和验证码,验证码的实现,就是checkcode.js,由于篇幅问题,checkcode.js请查看本站另一篇文章,
ExtJS4学习笔记(十)---ExtJS4图片验证码的实现。
主要是Login.js:
最终效果:
修改controller目录下的Main.js:
这时,当页面加载的时候,会显示登录窗口,而登录成功后, 会隐藏登录窗口并加载菜单。最后附上登录成功后页面效果。
首先,将server/MenuLoader.asp修改,增加管理员验证功能。即
If Session("Manage") <> "" Then '显示菜单项 End If
这时,重新打开页面,由于有了基本的管理员验证,菜单不显示了。
接下来,开始制作登录,在view文件夹下建立Login.js,checkcode.js,其中Login.js实现登录功能,有用户名、密码和验证码,验证码的实现,就是checkcode.js,由于篇幅问题,checkcode.js请查看本站另一篇文章,
ExtJS4学习笔记(十)---ExtJS4图片验证码的实现。
主要是Login.js:
Ext.define(SMS.view.Login',{ extend:'Ext.window.Window', alias: 'widget.loginForm', requires: ['Ext.form.*','SMS.view.CheckCode'], initComponent:function(){ var checkcode = Ext.create('SMS.view.CheckCode',{ cls : 'key', fieldLabel : '验证码', name : 'CheckCode', id : 'CheckCode', allowBlank : false, isLoader:true, blankText : '验证码不能为空', codeUrl: '/include/checkCode.asp', width : 160 }) var form = Ext.widget('form',{ border: false, bodyPadding: 10, fieldDefaults: { labelAlign: 'left', labelWidth: 55, labelStyle: 'font-weight:bold' }, defaults: { margins: '0 0 10 0' }, items:[{ xtype: 'textfield', fieldLabel: '用户名', blankText : '用户名不能为空', name:'UserName', id:'UserName', allowBlank: false, width:240 },{ xtype: 'textfield', fieldLabel: '密 码', allowBlank: false, blankText : '密码不能为空', name:'PassWord', id:'PassWord', width:240, inputType : 'password' },checkcode], buttons:[{ text:'登录', handler:function(){ var form = this.up('form').getForm(); var win = this.up('window'); if(form.isValid()){ form.submit({ clientValidation: true, waitMsg:'请稍后', waitTitle:'正在验证登录', url:'/server/checklogin.asp', success: function(form, action) { //登录成功后。 //隐藏登录窗口,并重新加载菜单 win.hide(); Ext.getCmp('SystemMenus').store.load(); }, failure: function(form, action) { Ext.MessageBox.show({ width:150, title:"登录失败", buttons: Ext.MessageBox.OK, msg:action.result.msg }) } }); } } }] }) Ext.apply(this,{ height: 160, width: 280, title: '用户登陆', closeAction: 'hide', closable : false, iconCls: 'win', layout: 'fit', modal : true, plain : true, resizable: false, items:form }); this.callParent(arguments); } });
最终效果:
修改controller目录下的Main.js:
Ext.define(SMS.controller.Main',{ extend: 'Ext.app.Controller', requires:['SMS.view.Login'], onLaunch : function(){ var win; if(!win){ win = Ext.create('SMS.view.Login').show(); } } })
这时,当页面加载的时候,会显示登录窗口,而登录成功后, 会隐藏登录窗口并加载菜单。最后附上登录成功后页面效果。
相关文章推荐
- SSH入门开发(实现一个简单的登录功能)详解
- Android开发之自己主动登录功能的实现
- 【web开发笔记】mybatis实现新建内容,提交,并存入数据库功能
- 笔记 Java web实现用户登录、数据库数据查询、数据删除等功能
- IOS开发简单登录LoginViewController、注册RegisterViewController、UcenterViewController功能实现方法
- iOS开发——高级技术&通讯录功能的实现
- JDCB学习笔记 -- day05 实现一个用户的登录功能及解决SQL注入问题
- 安卓服务端开发(1) 安卓结合PHP实现连接数据库验证登录功能(附全部代码)
- ajax开发:jqueryajax+php的登录与退出功能实现
- Android开发笔记之广播,service实现音乐的播放暂停停止快进等功能
- spring 3.x 学习笔记_spring mvc、spring jdbc 实现网站的登录注册功能
- 【Qt编程】基于Qt的词典开发系列<八>--用户登录及API调用的实现
- JFinal使用笔记3-注册和登录功能开发记录
- iOS开发——高级技术&调用地图功能的实现
- SSH网站开发实录(4)(实现登录功能)SpringMVC+Spring+Hibernate
- .NET微信开发之PC 端微信扫码注册和登录功能实现
- 【Rails学习笔记】登录和退出功能实现
- IOS开发笔记(Swift):利用开源类库实现检测更新功能
- 【安卓小笔记】开发过程的小功能实现
- iPhone开发笔记(19)实现类似网易新闻当应用状态变为active时手动调用下拉刷新的功能