extjs 只读

extjs 设定只读 readOnly(2011-06-14 11:25:21)转载标签: 杂谈 分类: Ext学习

Ext.onReady(function(){
Ext.QuickTips.init();
Ext.form.Field.prototype.msgTarget = 'side';
//Ext.state.Manager.setProvider(new Ext.state.CookieProvider());

var vrName = "trust-vr";
var vrStore = new Ext.data.ArrayStore({
url: 'common_vr_ajax.html',
fields: ['vrName']
});

var smtpCfgPanel = {
xtype: 'panel',
layout: 'form',
title: 'SMTP服务器配置',
bodyStyle: 'padding: 10px 50px',
defaults:{border: false},
//defaultType: 'textfield',
labelWidth : 130,
items: [{
layout:'table',
defaults:{border: false},
layoutConfig: {columns: 2},
items:[{
layout: 'form',
width:295,
labelWidth : 130,
items:[{
xtype:'textfield',
fieldLabel: 'SMTP名称',
width:140,
id: 'txtSmtpName',
name: 'txtSmtpName',
vtype:'string',
maxLength:31,
allowBlank: false
}]
},{
html:'(1~31)字符'
}]

},{
layout:'table',
defaults:{border: false},
layoutConfig: {columns: 2},
items:[{
layout: 'form',
width:295,
labelWidth : 130,
items:[{
xtype:'textfield',
fieldLabel: 'SMTP服务器',
width:140,
id: 'txtSmtpSrv',
name: 'txtSmtpSrv',
allowBlank: false,
vtype:'string',
maxLength:'255'
}]
},{
html:'(域名或IP)'
}]
},{
xtype: 'panel',
layout: 'form',
id: 'panelVR',
hidden: true,
defaults:{border: false},
border: false,
labelWidth : 130,
items: [{
fieldLabel: 'SMTP虚拟路由器',
xtype: 'combo',
width:140,
triggerAction: 'all',
name: 'cmbSmtpVrouter',
id: 'cmbSmtpVrouter',
hiddenName: 'selVRName',
store: vrStore,
displayField: 'vrName',
valueField: 'vrName',
value: vrName
}]
},{
fieldLabel: 'SMTP验证',
xtype: 'checkbox',
boxLabel: '启用',
inputValue: 1,
name: 'chkSmtpVerity',
id: 'chkSmtpVerity',
listeners: {
check: function(_chkbox, _chked) {
if (_chked) {
Ext.getCmp('panelSmtpVerity').show();
Ext.getCmp('txtUserName').enable();
Ext.getCmp('txtPasswd').enable();
Ext.getCmp('txtConfirm').enable();
} else {
Ext.getCmp('panelSmtpVerity').hide();
Ext.getCmp('txtUserName').disable();
Ext.getCmp('txtPasswd').disable();
Ext.getCmp('txtConfirm').disable();
}
}
}
},{
xtype: 'panel',
layout: 'form',
border: false,
hidden: true,
defaults:{border: false},
id: 'panelSmtpVerity',
//defaultType: 'textfield',
items: [{
layout:'table',
defaults:{border: false},
layoutConfig: {columns: 2},
items:[{
layout:'form',
labelWidth : 130,
width:300,
items:[{
xtype:'textfield',
allowBlank: false,
disabled:true,
fieldLabel: '用户名',
width:140,
name: 'txtUserName',
id: 'txtUserName',
vtype:'string',
maxLength:31
}]
},{
html:'(1~31)字符'
}]
},{
layout:'table',
defaults:{border: false},
layoutConfig: {columns: 2},
items:[{
layout:'form',
labelWidth : 130,
width:300,
items:[{
xtype:'textfield',
fieldLabel: '密码',
disabled:true,
name: 'txtPasswd',
width:140,
id: 'txtPasswd',
inputType: 'password',
allowBlank: false,
vtype:'string',
maxLength:31
}]
},{
html:'(1~31)字符'
}]
},{
xtype:'textfield',
fieldLabel: '重新输入密码',
name: 'txtConfirm',
disabled:true,
id: 'txtConfirm',
width:140,
inputType: 'password',
vtype: 'confirm',
confirm: {
targetId: 'txtPasswd'
}
}]
},{
xtype:'textfield',
fieldLabel: 'Email发送地址',
width:140,
id: 'txtComeFrom',
name: 'txtComeFrom',
allowBlank: false,
vtype: 'email'
}],
buttonAlign: 'center',
buttons: [{
text: '应用',
handler: function(){
var fm = Ext.getCmp('fmpanelSmtpCfg').getForm();
var url = 'email_log_edit_ajax.html?s1=cfg&t1=set&a1=apply';
var successHandler = function() {
Ext.getCmp('txtSmtpName').el.dom.readOnly = true;
};
if (fm.isValid()){
submitForm(fm, url, null, successHandler, null, null);
}
}
},{
text: '删除',
handler: function(){
var fm = Ext.getCmp('fmpanelSmtpCfg').getForm();
var url = 'email_log_edit_ajax.html?s1=cfg&t1=set&a1=delete';
var successHandler = function(thisAction) {
var textfields = new Array();
textfields = Ext.getCmp('fmpanelSmtpCfg').findByType('textfield');
for(var i=0;i<7;i++){
textfields[i].setValue('');
textfields[i].clearInvalid();
}
Ext.getCmp('chkSmtpVerity').setValue(false);
Ext.getCmp('txtSmtpName').el.dom.readOnly = false;
};
submitForm(fm, url, null, successHandler, null, null);
}
}]
};
var viewport = new Ext.Viewport({
layout: 'border',
items: [{
region: 'center',
xtype: 'form',
border: false,
id: 'fmpanelSmtpCfg',
bodyStyle: 'padding: 10px 100px',
items: [smtpCfgPanel],
listeners: {
render: function(){
var fm = Ext.getCmp('fmpanelSmtpCfg').getForm();
fm.load({
url: 'email_log_edit_ajax.html?s1=cfg&t1=get',
method: 'GET',
success: function(form, action) {
var v = action.result.data.txtSmtpName;
if(v) {
Ext.getCmp('txtSmtpName').el.dom.readOnly = true;
}
else{
Ext.getCmp('txtSmtpName').el.dom.readOnly = false;
}
}
});
}
}

},
toolsSmtpPanel]
});

vrStore.load({
callback: function() {
if (vrStore.getCount() > 0) {
Ext.getCmp('panelVR').show();
}
}
});


});
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值