43

すべての優れた組み込み機能のために、すべてのテーブルにJQuery DataTablesを使用していますが、テーブルレイアウトをカスタマイズする唯一の方法は、DataTableの「sDom」オプション属性を設定し$("div.SOMECLASS").html(HTML_HERE)、カスタマイズされたhtmlをテーブルに追加します。(参考までに、ヘッダーをカスタマイズしようとしています)。

問題は、挿入されたhtmlにknockoutjsバインディングを使用させたいことです。Knockoutは、この方法でバインディングを初期化していないようです。

これを回避する方法はありますか?

これは私が挿入したいhtmlの一部です。これは、テーブルのいくつかのカスタムフィルター関数のドロップダウンリストです。

'<li><a data-bind="click: Filter(\'Severity 1\', 2)">Severity 1</a></li>'
4

1 に答える 1

68

動的HTML要素を挿入した後にこの関数を呼び出す必要があります

ko.applyBindings(viewModel, elementContainingDynamicContent)

ここの例http://jsfiddle.net/rniemeyer/FCN5p/

于 2012-05-31T01:54:12.310 に答える