Extjs4---用MVC做的后台管理系统之三
[javascript]
//定义验证码控件
Ext.define('CheckCode',{
extend: 'Ext.form.field.Text',
alias: 'widget.checkcode',
inputTyle:'codefield',
codeUrl:Ext.BLANK_IMAGE_URL,
isLoader:true,
onRender:function(ct,position){
this.callParent(arguments);
this.codeEl = ct.createChild({ tag: 'img', src: Ext.BLANK_IMAGE_URL});
this.codeEl.addCls('x-form-code');
this.codeEl.on('click', this.loadCodeImg, this);
if (this.isLoader) this.loadCodeImg();
},
alignErrorIcon: function() {
this.errorIcon.alignTo(this.codeEl, 'tl-tr', [2, 0]);
},
//如果浏览器发现url不变,就认为图片没有改变,就会使用缓存中的图片,而不是重新向服务器请求,所以需要加一个参数,改变url
loadCodeImg: function() {
this.codeEl.set({ src: this.codeUrl + '?id=' + Math.random() });
}
});
Ext.onReady(
function(){
var checkcode = Ext.create('CheckCode',{
cls : 'key',
fieldLabel : '验证码',
name : 'CheckCode',
id : 'CheckCode',
allowBlank : false,
isLoader:true,
blankText : '验证码不能为空',
codeUrl: 'getCode',
width : 150
});
var form = Ext.create(
'Ext.form.Panel',
{
frame:true,
title:'用户登录',
width:300,
height:170,
//渲染到页面中的loginForm层中
renderTo:'loginForm',
//是否可以拖动
draggable:true,
//使buttons中的button居中显示
buttonAlign:'center',
fieldDefaults:{
//居左
labelAlign:'center',
//宽度
labelWidth:50,
//anchor: '90%',
//错误提示显示在一边(side),还可以配置为under、title、none
msgTarget: 'side'
},
items:[
{
xtype:'textfield',
&n
补充:web前端 , JavaScript ,