2013-05-15 36 views
1

我尝试在extjs4.2中使用itemSelector,但我不知道我可以配置两个商店。第一个多重选择面板由商店填充,第二个也有另一个面板。Extjs4 itemselector,配置问题

我需要保存数据库中的变体,因为我使用的存储是ajax-proxy数据存储。 这是我itemselector:

{ 
    xtype: 'itemselector', 
    id:'itemselector', 
    name:'userRoles', 
    anchor:'100%', 
    store: dsRoles, 
    toStore: dsUserRoles, 
    valueField:'id', 
    displayField:'name', 
    /*here there is a problem*/ 
    value: dsUserRoles, 
    msgTarget: 'side', 
    fromTitle : 'Available', 
    toTitle : 'Selected' 
} 

在“选定字段”的值从查询中来,而不是静态的像在所有我发现的例子。

编辑:toStore属性不起作用,今天这部分让我疯了:当我加载它含有一个tabpanel其中包含itemselector的secondTime这是什么,是呈现窗口: enter image description here 蒙山铬我发现此错误Uncaught TypeError: Cannot read property 'internalId' of undefined

任何帮助是有帮助的。

回答

1

问题已解决!我改变了源代码!(ItemSelector.js) 这里是,

initComponent: function() { 
    var me = this; 

    me.ddGroup = me.id + '-dd'; 
    me.callParent(); 

    // bindStore must be called after the fromField has been created because 
    // it copies records from our configured Store into the fromField's Store 
    //me.bindStore(me.store);  //don't need to bind 
}, 

createList: function(title, store){  //add a parameter named store 
... 
store: store,  //use the passed store 
... 
} 
... 
me.fromField = me.createList(me.fromTitle, me.store); 
me.toField = me.createList(me.toTitle, me.toStore); 
+0

我让你说做都在改变,我解决的观点麻烦,但是当我加载在itemselector数据只左边的部分被加载,但实际上没有变化。我必须改变的地方,如果我想在负载上填充也是最重要的部分? – AfanfeFana

+0

我对rigit面板做了一些修改,比如提交值,但现在全部完成了......非常感谢您的支持! – AfanfeFana