我想使用類似Knockout的foreach構造來迭代對象的屬性。這是我想創建...如何使用敲除來遍歷對象(而不是數組)
期望的結果
<table>
<tr>
<td>Name 1</td>
<td>8/5/2012</td>
</tr>
<tr>
<td>Name 2</td>
<td>2/8/2013</td>
</tr>
</table>
然而,我的模型看起來像這樣...
JS
function DataModel(){
this.data = ko.observableArray([{
entityId: 1,
props: {
name: 'Name 1',
lastLogin: '8/5/2012'
}
},
{
entityId: 2,
props: {
name: 'Name 2',
lastLogin: '2/8/2013'
}
}]);
}
var dataModel = new DataModel();
ko.applyBindings(dataModel);
每行都有一個entityId和道具,它們本身就是一個對象。這個模板不起作用,但我如何改變它來生成上面所需的表格?
編輯:在這個例子中props
是name
和lastLogin
,但我需要一個解決方案,是不可知的什麼是包含內部props
。
我也有這個FIDDLE去。
HTML
<div data-bind="template: { name: 'template', data: $data }"></div>
<script type="text/html" id="template">
<table>
<tr data-bind="foreach: data()">
<td data-bind="text: entityId"></td>
</tr>
</table>
</script>
是道具的數量總是2或者他們可以彼此之間有什麼不同? – 2013-02-14 11:20:09