日期:2014-05-16 浏览次数:20905 次
var urlStore = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({
url: ' <%= path%>/module/prepareModule_getUrls',
method: 'POST'
}),
reader: new Ext.data.ArrayReader({},[
{name: 'value'},
{name: 'text'}
])
});
var urlComboBox = new Ext.form.ComboBox({
fieldLabel: '路径',
xtype: 'combo',
hiddenName: 'prapareModuleid',
emptyText: '请选择路径',
msgTarget: 'side',
allowBlank: false,
blankText: '路径不能为空',
triggerAction: "all",
displayField: 'text',
valueField: 'value',
editable : false,
store: urlStore,
mode: 'remote',
width: 230
});
urlComboBox.store.reload(); addModuleWin.show();
但ComboBox就是不显示重新加载的数据 在comboBox渲染之前,加载数据。 beforerender: function () {加载数据} 让combobox重新渲染下就应该有数据了
------解决方案--------------------
放在window的show回调中
win.show(null, function(){
urlComboBox.store.reload();
});
------解决方案--------------------
支持6楼的说法。
当win再次show的时候,如果combobox还没有渲染好,但这时数据已经请求了,是不会显示的,
尽量迟一点调用combobox的reload,比如在win的show,或render事件里试试。