如此这样一个界面,当我新加栏目的时候,我希望   所属栏目里的数据能更新。整个页面代码如下,请高手指导。Ext.require(['Ext.form.*']);Ext.onReady(function() { var win, button = Ext.get('btnEnter');
button.on('click', function() {
/*
 * Ext.Ajax.request({ method : "get", url :
 * '../main/menutree/getMenuTreeList.do?n=' + new
 * Date().getTime() + '', success : function(resp, opts) {
 * alert(resp.responseText); } });
 */ showContactForm();
});
function showContactForm() {
// 定义ComboBox模型
Ext.define('State', {
extend : 'Ext.data.Model',
fields : [{
type : 'int',
name : 'menuId'
}, {
type : 'string',
name : 'mName'
}]
});
//var store;
Ext.Ajax.request({
url : '../main/menutree/getMenuTreeList.do?n='
+ new Date().getTime(),
method : "post",
success : function(response) {
var text = response.responseText;
//store.loadRawData(text);
}
});
// 加载数据源
var store = Ext.create('Ext.data.Store', {
autoLoad : true,
model : 'State',
proxy : {
type : 'ajax',
actionMethods : {
create : "POST",
read : "POST",
update : "POST",
destroy : "POST"
},
url : '../main/menutree/getMenuTreeList.do?n='
+ new Date().getTime(),
reader : {
type : "json",
root : "menuRoot"
}
},
remoteSort : false,
mode : "remote"
});
// store.load();
var itms = [{
xtype : "textfield",
fieldLabel : "栏目名称",
name : "mName",
width : 300,
allowBlank : false,
blankText : "栏目名称不能为空"
}, {
xtype : "combobox",
name : 'mPid',
id : 'mPid',
fieldLabel : '所属栏目',
displayField : 'mName',
valueField : 'menuId',
store : store,
triggerAction : 'all',
queryMode : 'remote',
selectOnFocus : true,
forceSelection : true,
allowBlank : false,
editable : true,
emptyText : '请选择栏目',
blankText : '请选择栏目',
loadingText : "加载数据...",
listeners : {
select : function(combo, record, index) {
/*
 * try { // userAdd = record.data.name; var parent =
 * Ext.getCmp('shi'); var parent1 =
 * Ext.getCmp("qu"); parent.clearValue();
 * parent1.clearValue(); parent.store.load({ params : {
 * param : this.value } }); } catch (ex) {
 * Ext.MessageBox.alert("错误", "数据加载失败。"); }
 */
} }
}, {
xtype : 'textfield',
fieldLabel : '链接地址',
name : "mUrl"
}, {
xtype : "radiogroup",
fieldLabel : "状态",
layout : {
type : 'column'
},
vertical : false,
items : [{
boxLabel : '禁用',
name : 'mState',
inputValue : '0',
checked : true
}, {
boxLabel : '启用',
name : 'mState',
inputValue : '1'
}]
}, {
xtype : "numberfield",
fieldLabel : "排序",
name : "mSort",
width : 150,
allowBlank : false,
emptyText : 0,
blankText : "排序不能为空"
}, {
xtype : 'textareafield',
fieldLabel : '备注',
name : "mMemo",
labelAlign : 'top',
margins : '0',
width : 350,
allowBlank : true,
maxLength : 200
}];
if (!win) {
var form = Ext.create('Ext.form.Panel', {
layout : {
type : 'vbox'
},
defaultType : 'textfield',
border : false,
bodyPadding : 10,
fieldDefaults : {
labelAlign : 'left',
labelWidth : 70,
labelStyle : 'font-weight:bold'
},
defaults : {
margins : '0 0 10 0'
},
baseCls : "x-spotlight",
bodyStyle : "padding:5px",
items : itms,
buttons : [{
text : '提交',
handler : function() {
if (this.up('form').getForm().isValid()) {
form.submit({
clientValidation : true,
url : '../main/menutree/add.do',
success : function(form, action) {
if (action.result.success) {
Ext.MessageBox.alert(
"提示", "添加成功!");
// form.reset();
store.add()
win.close();
// win.destroy();
}
},
failure : function(form, action) {
Ext.MessageBox.alert("提示",
"添加失败,请查看日志!");
}
});
}
}
}, {
text : '重置',
handler : function() {
this.up('form').getForm().reset();
// this.up('window').hide();
}
}]
}); win = Ext.widget('window', {
title : '栏目管理',
closeAction : 'hide',
width : 400,
height : 350,
minHeight : 350,
layout : 'fit',
resizable : true,
modal : true,
items : form
});
}
win.show();
}});