我有这个淘汰赛代码:
var Account = ko.validatedObservable {
ClientID: '',
ConsultantID: '',
AccountNumber: ko.observable(),
Title: ko.observable('Mr'),
Forename: ko.observable(),
Surname: ko.observable().extend({
required: { message: "* Required" },
minLength: 2
}),
Submit: function () {
Account.errors.showAllMessages();
if (this.isValid())
$.ajax({
url: "/Account/CheckClientDetails",
type: 'POST',
dataType: 'json',
data: ko.toJSON(this),
contentType: "application/json; charset=utf-8",
success: function (data) {
Account.ClientID = data.Key;
alert(Account.ClientID);
alert(ko.toJSON(Account));
});
}
};
第一个警报显示客户端 ID,第二个警报的 JSON 显示一个空字符串!
我将 ko.toJSON(Account) 传递给 MVC 控制器,每个属性都已填充,但 ClientID 为零。
如果我删除验证(它来自 knockout.validation),一切都会按预期工作 - 但我不想失去该功能!
我需要做些什么来填充这个变量并保持这个值?