3

データベースから取得した情報をグリッドに表示する ExtJs ウィンドウを作成しました。ここで、データグリッド行にイベント ダブル クリックを追加する必要があります。私が抱えている問題は、このイベントで入力フィールドを含む別のウィンドウを開き、グリッドでクリックされた行から値を追加する必要があることです。

ダブルクリック時のリスナーからのコード スニペットを次に示します。

listeners : {
     itemdblclick: function(dv, record, item, index, e) {
           _restoreCallsWindow().show(); //show the second window
           Ext.get("sense-restore-calls-path-textfield-bodyEl").child('.x-form-text').set({value:record.data.path}, true); //get the input field and add value
        }
}

上記のコードは、firebug の要素にグリッドからの情報を持つ value 属性があることを調べると正常に動作しますが、この値を入力フィールドに表示したいと考えています。どうやってやるの?

あなたの知識を共有していただけますか?

ありがとう。

4

1 に答える 1

1

ウィンドウ内にExt.form.Panelがあると思います。次のことを行うだけで済みます。

listeners : {
    itemdblclick: function(dv, record, item, index, e) {
        var win = _restoreCallsWindow(),
            field= win.down('textfield'); // assuming you have just one textfield
        field.setValue(record.get('path'));
    }
}

各フィールドの name プロパティは、レコードのプロパティ名と一致する必要があることに注意してください。そうでなければ、これは機能しません。

于 2012-11-12T07:27:22.783 に答える