foreach では、以下のようにデータをバインドしています。
<ul class="state-list" data-bind="foreach: places">
<li class="city-container" data-bind="click:currentPlace">
<div>
<img class="city-img" data-bind="attr: { src: img, alt: name }">
<div class="city-facts">
<em data-bind="text:name"></em>
<!-- Not that we're not caching the stats template. This is to demonstrate passing ajax options -->
<div data-bind="template: { name: 'stats', templateUrl: 'templates/info', ajax: { cache: false } }"></div>
</div>
<span style="clear:both;"></span>
</div>
</li>
</ul>
そして、クリック時に「currentPlace」を呼び出します:そしてViewModelで私はこのように書いています:
this.currentPlace = function(data,event){
console.log("data=>",data);
}
データを印刷しているとき、完全なオブジェクトが得られます。
今私の質問は、そのオブジェクトにアクセスして、画像、名前、都市などのデータを取得する方法ですか?
data.name, data['name'] のように試してみましたが、うまくいきません。
編集 ご覧のとおり、別のテンプレート名「stats」を使用していますが、そのデータを読みたい場合はどうすればよいですか?
「統計」テンプレートは以下のとおりです。
<ul data-bind="foreach: stats">
<li class="stat-container" data-bind="ifnot: editing">
<div class="stat stat-name" data-bind="text:name"></div>
<div class="stat stat-value" data-bind="text:value, click: toggleEdit "></div>
</li>
<li class="stat-container" data-bind="if: editing">
<span class="stat stat-name" data-bind="text:name"></span>
<input class="stat stat-value"type="text" data-bind="value: value"><input type="button" value="save" data-bind="click: toggleEdit">
</li>
</ul>
前もって感謝します