0
我試圖顯示數據庫中的所有員工,我無法實現它。Knockout js無法使用observableArray綁定數據
我的JS,
var EmployeeKoViewModel = function() {
var self = this;
self.EmpId = ko.observable("");
self.Name = ko.observable("");
self.City = ko.observable("");
self.Employees = ko.observableArray([]);
GetEmployees();
function GetEmployees() {
$.ajax({
type: "GET",
url: "/Employee/About",
}).done(function (data) {
self.Employees.push(data);
}).error(function (ex) {
alert("Error");
});
}
}
$(document).ready(function myfunction() {
ko.applyBindings(new EmployeeKoViewModel());
})
而且我認爲,
<form>
<table>
<tr>
<td>
<div class="FixedContainer">
<table data-bind="visible: Employees().length>0" style="border: double">
<thead>
<tr>
<td>EmpId</td>
<td>Name</td>
<td>City</td>
<td></td>
</tr>
</thead>
<tbody data-bind="foreach: Employees">
<tr>
<td data-bind="text: EmpId"></td>
<td data-bind="text: Name"></td>
<td data-bind="text: City"></td>
</tr>
</tbody>
</table>
</div>
</td>
</tr>
</table>
</form>
沒有數據顯示的UI。我起來瀏覽器,但沒有錯誤已籤控制檯。
你能指導我在哪裏做錯了請。
data
[
ObjectCity: "Hyderabad"
EmpId: 1Name: "Vivek"
__proto__: Object
]
'self.Employees.push(數據);'應該是'self.Employees(數據);',嘗試這種方式。你不需要 - 'self.EmpId = ko.observable(「」); self.Name = ko.observable(「」); self.City = ko.observable(「」);' – ramiramilu
從'「/ Employee/About」調用返回的數據是什麼?你可以添加一個樣本嗎? – dotnetom
@ramiramilu工作。 Previuosly我採取了相同的Observable陣列,但我已推動它的工作 – Vivekh