若邪
2015-11-23 07:16
采纳率: 83.3%
浏览 2.1k

EXTJS4 下拉框绑定事件问题

目的是这样的:每次下拉框值的改变,就会改变store中的内容,从而改动页面的显示内容。
做到了第一步,但是问题是点第二个重新加载后去点之前的第一个,事件就没反应了。下拉框的监听事件感觉像是一次性用品?
代码:
var menuTreeStore = Ext.create('Ext.data.TreeStore', {
autoLoad : true,
proxy : {
type : 'ajax',
url : appBaseUri + '/sys/authority/getAuthority?globalRoleId=' + globalRoleId ,
reader : {
type : 'json',
root : 'children'
}
}
});
下拉框的值和下拉框 var projects = Ext.create('Ext.data.JsonStore', {
proxy : {
type : 'ajax',
url : appBaseUri + '/sys/project/getAll',
reader : {
type : 'json',
root : 'list',
idProperty : 'ItemValue'
}
},
fields : [ 'projectName', 'ItemValue' ]
});

// Create the combo box, attached to the states data store
var combo = Ext.create('Ext.form.ComboBox', {
    id:'project',
    fieldLabel: '项目选择',
    xtype: 'textfield',
    store: projects,
    name:'projectName',
    queryMode: 'remote',
    displayField: 'projectName',
    valueField : 'ItemValue',
    typeAhead : true,
    value: firstProject,
    editable : false,
    renderTo: Ext.getBody(),
    listeners : {
        select : function(combo, record, index) {
            console.log("change");
            menuTreeStore.proxy= new Ext.data.HttpProxy({url: appBaseUri + '/sys/authority/getAuthority?globalRoleId=' + globalRoleId+'&projectName='+combo.getRawValue()}); 
            menuTreeStore.load();
        }
    }
});:
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • 已采纳

    执行你的log了没有?可能是荤菜导致的,加个时间戳试试

     menuTreeStore.proxy= new Ext.data.HttpProxy({url: appBaseUri + '/sys/authority/getAuthority?globalRoleId=' + globalRoleId+'&projectName='+combo.getRawValue()+'&_dc='+new Date().getTime()}); 
    
    已采纳该答案
    打赏 评论

相关推荐 更多相似问题