0

私はknockout jsで作業しています。今私は、テンプレート内のノードにデータをバインドすることができないdatasource.InでテンプレートオプションとローカルJSONデータを使用しています。テンプレートオプションを使用してJSONオブジェクトデータをノックアウトバインディングにバインドするにはどうすればよいですか?

以下の私のhtmlコードを入手してください:私もjsfiddleでサンプルを更新した

var treeData = [ 
      { id: 1, text: "UK"}, 
      { id: 2, text: "Steven John" }, 
      { id: 3, text: "USA" }, 
      { id: 5, text: "Andrew" }, 
      { id: 4, text: "Angelica" } 
     ]; 


     window.viewModel = { 
      value: ko.observable(new Date(2015, 06, 15)), 
      Data: ko.observableArray(treeData) 
     }; 
     $(function() { 
      // declaration 
      ko.applyBindings(viewModel); 
     }); 

以下の私のスクリプトセクションを取得

<div data-bind="template:{name:'treeTemplate',data:{da:Data}}"></div> 
    <script id="treeTemplate" type="text/html"> 
     <b data-bind="text:$data.text"></b> 

してください。下のリンクを取得してください:

https://jsfiddle.net/38vnznht/

あなたは、誰もが任意のヘルプthis.Thanksにお勧めしてくださいすることができます。

答えて

1

最初の問題は、テンプレートオブジェクト内のデータの使用です。 https://jsfiddle.net/wqe3s1vs/3/

:あなたがここに

// from this 
<b data-bind="text:$data.text"></b> 

// to this 
<b data-bind="text: text"></b> 

あなたのバインディングを更新する必要があり、こののためのforeachので

foreach:data 

を使用する必要がある配列を反復処理のための

data:{da:Data} 

は実施例であります

また、「foreach」ウィジェットの使用に関するドキュメント名前付きテンプレート: http://knockoutjs.com/documentation/template-binding.html#note-2-using-the-foreach-option-with-a-named-template

+0

私は理解しました –

+1

問題はありません!それを聞いてうれしい! –

関連する問題