1

問題:

既存のアプリケーションで、ノックアウトを使用してグリッドといくつかの追加情報を表示する新しい機能を追加しています。最初にデータの一部をロードし、ajax を使用して他のデータをロードするサブスクリプションを準備し、Razor ビューでビューモデルを作成してサーバー側の変数を挿入し、それをバインドします (html ノードを渡すかどうかは関係ありません。同じ問題)。ページの読み込み時に、「バインディングを同じ要素に複数回適用することはできません」というエラーがコンソールに表示されifwithまたはtemplateバインディングを使用するすべての html 要素が空になります。

プロジェクト全体での「applyBindings」の唯一の出現は、私の見解とノックアウト ソースにあります。デバッグは、$(document).ready から 2 回呼び出されることを示しています。

コードからバインディングの適用を削除し、後でコンソールを使用して手動で呼び出すと、機能します。

4

1 に答える 1

0

回答はすでに SO: jQuery $(document).ready () が 2 回発生します

アプリケーションのテーマはhtml要素の移動/操作であり、ビューモデルの初期化を伴うタグは後で操作された同じhtmlビュー内にありました。ヘッドでレンダリングされる別のセクションに移動すると、問題が解決しました。

于 2013-09-23T06:53:57.763 に答える