2010-12-07 7 views
1

あなたはdojox.grid.DataGridのカスタムセルを作成する方法を知っていますか?私はもちろんレイアウトのgetとformatterのプロパティを使うことができますが、これは本当に再利用可能な解決策ではありません!dojox.grid.DataGridカスタムセル?

ありがとうございました!

ヘインリック

答えて

1

あなたはdojox.grid.DataGrid

2用falseescapeHTMLInDataを設定するグリッドセル

1)にDojoウィジェットを追加するには、間接的な方法を試すことができます)次に、GET /フォーマッタ機能に

のようなものを試してみてください
function formatterFn() { 
    var buttonToReturn = dijit.form.Button({ 
     /* Button attributes */ 
    } 
    var div = document.createElement("div"); 
    div.appendChild(buttonToReturn.domNode); 
    return div.innerHTML; 
    // You can leave the div orphan 
} 

あなたは条件付きで

はそれが役に立てば幸いニーズに合わせてさまざまなウィジェットを返すことができます!

+1

1.4以降、escapeHTMLInDataは必要ありません。フォーマッタがウィジェットを返すと、それが解析されます。 – Erik

2

カスタムセルはどういう意味ですか?

テキストの代わりにチェックボックスまたはテキストボックスを使用しますか?または

テキストではなく画像を表示しますか?

最初のケースで

  • = "真" 'singleClickEdit' = "真"
  • セット '編集可能' を与えると
  • セットcellType変数。 デフォルトのエディタクラスを拡張して、独自のエディタクラスを作成できます。

2番目のケースでは、フォーマッタ機能を使用できます。

既存の関数とクラスを使用することをお勧めします。拡張するとグリッドが遅くなります。

+0

値のカスタム書式設定を行うセルを作成したいとします。ボタンを表示するセル! – Erik

+0

ファイルdojo-release-1.5.0-src/dojox/grid/cells/dijit.jsを確認してください。これには、条件を満たすものがどれも一致するものがなければ、いくつかのエディタが含まれています。 'markupFactory'関数を書くのを忘れないでください。その機能がなければ動作しません。 – Manu

+0

私はそれを確認します、ありがとう! – Erik

関連する問題