【发布时间】:2014-06-30 22:50:26
【问题描述】:
我已经包含了:
淘汰赛.3.0.1.js
knockout.validation.debug.js
jquery.validate.js
错误是:(来自 Firebug)
TypeError: self.errors is not a function
除了验证所有其他代码都是完美的。
我的代码
var UserViewModel = function (UserName, Password) {
var self = this;
self.UserName = ko.observable(UserName).extend({
required: {
message:"Please enter User Name"
}
});
self.Password = ko.observable(Password).extend({
required: {
message: "Please enter Password"
}
});
this.loginClick = function () {
if (self.errors().length == 0)
{
alert('no errors');
// var strJSON = ko.toJSON(self); //Convert whole model to json
}
else
{
alert("Please check your submission");
self.errors.showAllMessages();
}
alert("function called");
};
};
ko.applyBindings(new UserViewModel('', ''));
【问题讨论】:
-
你能提供jsfiddle吗,很明显error属性不在self范围内
-
jsfiddle.net/d8heg - fsfiddle
-
你在哪里定义 self.errors()?
-
我没有定义,我认为是在 knockoutjs 库中
-
不,不是,您需要指定自己的
errors对象。您可能应该更多地阅读 knockout.validation 插件。
标签: jquery asp.net-mvc validation asp.net-mvc-4 knockout.js