私は次のコードを持っています:
function JobTask() {
var self = this;
self.description = ko.observable('').extend({
required: true
});
self.priority = ko.observable('').extend({
number: true,
required: true
});
self.complete = ko.observable(false);
}
function CreateJobViewModel() {
var self = this;
self.task = ko.observable(new JobTask());
self.taskErrors = ko.validation.group(self.task);
self.addTask = function () {
if (self.taskErrors().length) {
console.log(self.taskErrors());
self.taskErrors.showAllMessages();
}
else {
...
}
};
}
問題は、タスクを追加すると、フィールドに正しく入力しても、何らかの理由で無効になることです。コンソール出力[null]
。さらに調査すると、フィールドに正しく入力しなくても、taskErrors
配列の最初の項目は常に。であるよう[null]
です。したがって、次のようになります[null], "This field is required."
。私が間違ったことを知らないのですか?
編集
これが私が問題について作成したフィドルです:http://jsfiddle.net/5kh6h/1/