【发布时间】:2014-05-28 15:20:51
【问题描述】:
我不希望任何错误消息出现在视图上(我使用 toastr 来显示由敲除验证产生的错误)。在我的代码中,我使用的是:insertMessages: false。这会抑制错误,除非用户在必填字段中输入数据,删除该数据,然后制表符脱离控制。当用户跳出输入控件时,我不知道如何隐藏任何错误消息。这是我的代码摘录-
视图模型-
LCAmount: ko.observable(LCAmount).extend({ insertMessages: false, required: { message: 'LC Amount is Required' } })
var saveAll = function () {
try {
var goAhead = true;
var changes = false;
SaveFlag(true);
ko.utils.arrayForEach(LoanDetails(), function (item) {
if (item.LCAmount != '')
changes = true;
if (item.errors().length > 0) {
goAhead = false;
logError("Errors on form: " + item.errors(), item, true);
}
});
if (goAhead && changes && okStoSave) {
$.prompt("Are you sure you want to save? You will not be able to change your decision after it's been saved.", {
title: "Save?",
buttons: { "Save": true, "Cancel": false },
submit: function (e, v, m, f) {
if (v) {
response = saveUpdates(LoanDetails);
});
vm.clientNumber('');
vm.clientName('');
}
}
});
}
查看-
<input data-bind="value: LCAmount, validationOptions: { insertMessages: false }" />
【问题讨论】:
-
你能创建一个小提琴来展示你的问题吗?
标签: knockout.js durandal single-page-application knockout-validation