2012-03-16 6 views
0

これは、基本的なようだが、これを実装する方法を見つけるように見えることはできません:私は、リストアイテムをループすることのQooxdooの配列からSelectBoxの項目を初期化する方法はありますか?

var array = ["item1","item2"...] 

代わり配列から選択ボックスを初期化したい

var selectBox = new qx.ui.form.SelectBox(); 
var test = ["item1", "item2"]; 
for (var i = 0; i < test.length; i++){ 
    var tempItem = new qx.ui.form.ListItem(test[i]); 
    selectBox.add(tempItem); 
} 

Qooxdooでそれを行う方法はありますか?

答えて

3

まず第一に、あなたのループのよりエレガントなバージョン:

var selectBox = new qx.ui.form.SelectBox(); 
test = ["item1", "item2"]; 

test.forEach(function(obj) { 
    selectBox.add(new qx.ui.form.ListItem(obj)); 
}, this); 

しかし、あなたはQooxdoo(Link to documentation)のドキュメントをデータバインディングを見てみる必要があります。コントローラーを操作するとき

var selectBox = new qx.ui.form.SelectBox(); 
test = ["item1", "item2"]; 

new qx.data.controller.List(new qx.data.Array(test), selectBox); 

は、あなたが簡単など他のウィジェットに私が探していたたまさに

+0

感謝を変更イベントを結合のようないくつかのより多くの興味深い機能が得られます。これを使用するときは、このようなソリューションを持っています! – Jonathan

関連する問題