エラー: バインディングを解析できません。メッセージ: ReferenceError: メッセージが定義されていません。バインディング値: テキスト: メッセージ。
バインディングが失敗する理由がわかりませんでした。
以下はJavaScriptコードです:
var LogItemModel = function () {
var self = this;
function LogItem($root, appName, level, message) {
self.appName = ko.observable(appName);
self.level = ko.observable(level);
self.message = ko.observable(message);
}
self.logItems = ko.observableArray();
self.add = function (appName, level, message) {
self.logItems.push(new LogItem(self, appName, level, message));
};
};
$(document).ready(function () {
var logItemModel = new LogItemModel();
ko.applyBindings(logItemModel);
var url = "http://localhost:49091/api/Log";
$.getJSON(url, function (result) {
$.each(result, function (idx, logItem) {
logItemModel.add(logItem.ApplicationName, logItem.Level, logItem.Message);
debugger;
});
}).error(function (e) {
});
});
以下はhtmlコードです:
<div id="LogItemList" data-bind="foreach:logItems">
<span data-bind="text: message"></span>
</div>
LogItemList要素にバインディングを適用しようとしました
ko.applyBindings(logItemModel, $("#LogItemList")[0]);
しかし、これでもうまくいきませんでした。