我在使用淘汰賽迭代我的json數據時遇到了問題。 我的視圖模型看起來像:淘汰賽js。每個孩子的孩子不工作
var ViewModel = function() {
var self = this;
self.Summary = ko.observableArray();
$.getJSON('some api url', function(result) {
ko.mapping.fromJS(result, {}, self);
});
}
ko.applyBindings(new ViewModel());
我的JSON數據是這樣的:
{
Summary: {
Details: [
{
Name: "Foo",
Id: 1,
Detail: "Some Data"
},
{
Name: "Bar",
Id: 2,
Detail: "Another Data"
}
],
SummaryOverview: "BlahBlah",
AnotherObject: [
{
Name: "My Name"
AnotherChildObject: [
{
name:"some name"
}
]
}
]
}
} 我的問題是我遍歷經過我的數據是這樣的:
<div data-bind="foreach: Summary">
<div data-bind="text: Details.Detail"></div>
</div>
OR
<div data-bind: "foreach: Summary.Details">
<div data-bind="text: Detail"></div>
</div>
如何顯示細節?上面的HTML不適合我。 非常感謝!
檢查您的foreach - 看起來像拼寫爲「Summary」的摘要爲「Summarry」 – Disgone
您的數據不包含任何數組,它甚至不是有效的......所以它根本無法工作。它應該是什麼? –
您的JSON無效,並且有幾種可能的解釋方式。我們不知道你想用它代表什麼,所以請給我們提供有效的JSON數據,然後我們可以告訴你如何修改你的javascript。 和Jeff Mercado一樣說:你的JSON中沒有數組。如果你想使用foreach,必須有一個數組。請糾正它。 而作爲Disgone賽義夫,您的HTML使用錯誤的名稱來訪問數據。 正如我所說:請在您的問題和特別是你的例子更加努力。如果你不認爲你的問題足夠深入徹底,爲什麼我們呢? – EmilioMg