itemselectorの右側のマルチセレクションボックスに値を入力する必要があります。 まずは空白にしておき、その上にあるコンボボックスの項目を選択すると、それに応じて値を入力する必要があります。私はこれを試し、現時点ではクラッシュし、何も間違っているように見えません。ここでは、コードスニペットは、次のとおりです。ExtJS Itemselectorのストアに値を動的に割り当てる方法は?
var userList = GetUserList();
var aoiList = GetAOIList();
var userAOIs = "";
var selectedUser="";
var userStore = new Ext.data.ArrayStore({
fields: ['user'],
data: userList
});
var aoiStore = new Ext.data.ArrayStore({
fields: ['aoiList'],
data: aoiList
});
var userAOIStore = new Ext.data.ArrayStore({
fields: ['userAOIs'],
data: userAOIs
});
var aafp = new Ext.FormPanel({
width : 350,
frame : true,
autoHeight : true,
bodyStyle : 'padding: 2px 5px 0 2px;',
labelWidth : 100,
defaults : {
anchor : '95%',
allowBlank : false,
msgTarget : 'under'
},
items : [ {
xtype : 'combo',
fieldLabel : 'Choose User',
emptyText: "Select User...",
id : 'userId',
name : 'user',
multiSelect: false,
store: userStore,
displayField: 'user',
mode: 'local',
editable: false,
typeAhead: true,
triggerAction: 'all',
listeners:{select:{fn:function(combo, value) {
selectedUser = value.get('user');
userAOIs = myAOIs(selectedUser);
userAOIStore = new Ext.data.ArrayStore({
fields: ['userAOIs'],
data: userAOIs});
aafp.getForm().findField("itemselector").reset();
}}
},
value : selectedUser
},{
xtype: 'itemselector',
name: 'itemselector',
fieldLabel: 'AOISelector',
imagePath: 'ext-3.4.0/examples/ux/images/',
drawUpIcon:false,
drawDownIcon:false,
drawTopIcon:false,
drawBotIcon:false,
multiselects: [{
width: 250,
height: 200,
store: aoiStore,
displayField: 'aoiList'
},{
width: 250,
height: 200,
store: userAOIStore,
displayField: 'userAOIs',
valueField: 'userAOIs'
}]
}]
は当初、私は「aafp.getForm()findField(」itemselector「)を疑った。リセット()」を呼び出し、動的要素をリロードするために他のいくつかの機能があるかもしれないと思いましたフィールドのデータをリセット/消去するのに使用されるかもしれないリセットの代わりにフォームで、しかしリセットは内容を再ロードしています。 これを達成する方法を入力してください。
おかげ
私のコードで私はこれを試しました:aafp.getForm()。findField( "itemselector")store = userAOIStore; aafp.getForm()。findField( "itemselector")。リセット();これは、私はデバッグモードで見ることができますが、ビューを更新していないストアを変更しています。 – Shariq
レコードをストアに追加するだけで何をしようとしていますか?私はあなたがコールリセットされている理由を混乱させるのですか? – codemonkeyww
例の助けを借りて説明してください。私の場合、私は店の内容を置き換えなければならないので、私は割り当てていました。そしてリセットは内容に何の影響も与えません、私はそれが起こっていない私のビューを更新するために呼んでいた。 – Shariq