私は KnockoutJS 初心者です。
以下に記述されたビューがあり、実行時に各カテゴリのカテゴリ変数が表示されません。ここで何が間違っているのか見てみてください。
ご協力いただきありがとうございます。
私のコードビュー:
<table class="table">
<thead>
</thead>
<tbody data-bind="foreach: categories">
<tr>
<td data-bind="text: Name">
<table>
<tbody data-bind="foreach: categoryVariables">
<tr>
<td data-bind="text: Name"></td>
</tr>
</tbody>
</table>
</td>
<td><button data-bind='click: $root.addCategoryVariable'>Add a category variable</button></td>
</tr>
</tbody>
</table>
<button data-bind='click: addCategory'>Add a category</button>
<script type="text/javascript">
var resumeDataViewModel;
function Category(data) {
var self = this;
self.ID = data.ID;
self.Name = data.Name;
self.categoryVariables = ko.observableArray([
new CategoryVariable({ID: '1', Name: 'asd'})
]);
}
function CategoryVariable(data) {
var self = this;
self.ID = data.ID;
self.Name = data.Name;
}
function ResumeDataViewModel() {
var self = this;
self.categories = ko.observableArray([
new Category({ID: '1', Name : 'Contact', Category: {ID: '1', Name: 'gfdg'}}),
new Category({ID: '2', Name : 'Education', Category: {ID: '2', Name: 'asdasd'}})
]);
self.addCategory = function(){
self.categories.push(new Category({
Name: "sa d"
}));
}
self.addCategoryVariable = function (category) {
category.categoryVariables.push(new CategoryVariable({
Name: 'asd'
}));
}
}
ko.applyBindings(resumeDataViewModel = new ResumeDataViewModel());
</script>
あなたの返事を探しています。本当にありがとうございます。