0

私はコンボボックスとデータソースをプロキシとして持つ単純なグリッドフォームに取り組んでいます( http://goo.gl/2fxP8など)。コンボボックスは正しく読み込まれますが、リスト項目の 1 つを選択しようとすると、グリッドフォームが閉じてコンボボックスが閉じません。誰でも私を助けることができますか?

リスト項目が選択されると、他のフィールドが動的に読み込まれるように、コンボボックスの onselect 関数も拡張する予定です。

 searchField = new Ext.form.ComboBox({
     store: ds,
     name : 'search',
     id:'search',
     fieldLabel : 'Search',
     displayField:'title',
     typeAhead: false,
     loadingText: 'Searching...',
     pageSize:10, 
     minChars:2,
     triggerAction: 'all',
     width: 200,
     tpl: resTpl,
     itemSelector: 'div.search-item',
     onSelect: function(record){ 
     /* Set Values to other fields here */
     }
 }),

保存するためのコードは次のとおりです。

                                    Ext.Ajax.request
                                    ({  
                                    url:"some url",
                                    scope:this,
                                    params:
                                    {
                                    },
                                    success: function(objServerResponse)
                                    {
                                        eval("var resultSet = " +objServerResponse.responseText);
                                        if(resultSet.isOk)
                                        {

                                            this.collapse();
                                        }   
                                        else
                                        {


                                        }

                                    }
                                    });
4

1 に答える 1

0

問題はあなたがonSelect関数をオーバーライドしていることだと思います..ここ
を見てください(見つけてみてください)、メソッドはプライベートです... そしてご覧のとおり、内部にはデフォルトで呼び出す関数があります..したがって、オーバーライドしている場合は。 。デフォルトではコンボが崩壊する ことはありません..手動で行う必要があります..キランが言ったように...onSelectonSelect
onSelectcollapseonSelect

そして私の質問は、なぜあなたはonSelect関数を上書きしたのですか?? ..
何かをする必要がある場合コンボが選択されたとき、なぜそれをリスナーとして設定しませんか??

コードを変更してみてください:

 onSelect: function(record){ 
 /* Set Values to other fields here */
 }

これで:

listeners : {
   "select" : function(combo,data,idx){
        console.info(data);
   }
}
于 2011-08-11T02:30:22.830 に答える