1

durandal ビューに html を動的に挿入していますが、うまくいきません。私のサンプルhtmlは

デュランダルビューで

<div data-bind="foreach:arrayofmodels">
    <div data-bind="html:dynamichtml"/>
  </div>

動的htmlを挿入する私のモデル(ビューモデルではない)で

dynamichtml(<span data-bind="click:Mymodelclickfunction"/>);

私のビューモデルで

    var arrayofmodels=ko.observableArray();
     vm={
         arrayofmodels:arrayofmodels;
       }
return vm;

モデル オブジェクトのリストを取得し、それらをarrayofmodels array にプッシュする別の関数があります。

バインディングが適用された後に html を挿入するという問題は理解していますが、この問題を解決するにはどうすればよいですか?

4

1 に答える 1

-1

更新しました:

その目的でデュランダルの構成メカニズムを使用することを検討しましたか? Mymodelclickfunctionモデルがプロパティを持つコンストラクター関数を返すと仮定すると、次のようなものから始められるはずです。

model.js

define(function() {
    return function() {
        this.Mymodelclickfunction = function(){
           //...
        }
    };
});

model.html

<div>
    <span data-bind="click:Mymodelclickfunction"/>
</div>

コメントデュランダルビューに基づいて更新

<div data-bind="foreach:arrayofmodels">
    <!-- ko compose: $data -->
    <--/ko -->
</div>

http://dfiddle.github.io/dFiddle-1.2/#/view-compositionのビュー構成セクションを見て、さらにいくつかの例を確認してください。

于 2013-06-04T15:41:27.517 に答える