Javascript (Signalr) 関数が起動されたときに、knockoutjs を使用して Html ビューを更新します。producthub.client.showOnlineUser
ただし、が呼び出されてもビューは更新されません。テーブルに同じコンテンツが複数回含まれるたびにバインディングを適用すると。ノックアウトjsでビューを更新するにはどうすればよいですか?
HTML:
<table id="usersTable">
<thead>
<tr>
<th>Name</th>
<th>Mail</th>
</tr>
</thead>
<tbody data-bind="foreach: seats">
<tr>
<td data-bind="text: NameFirst"></td>
<td data-bind="text: Mail"></td>
</tr>
</tbody>
</table>
Javascript:
$(document).ready(function () {
var applied = false;
var model;
producthub.client.showOnlineUser = function (userOnlineOnUrl, msg1) {
function ReservationsViewModel() {
var self = this;
self.seats = ko.observableArray(userOnlineOnUrl);
}
model = new ReservationsViewModel();
if (!applied) {
ko.applyBindings(model);
applied = true;
}
};
});
userOnlineOnUrl
関数呼び出しごとにデータを変更する JSON-Array です。ビュー (テーブル) はそのデータで更新されません。