我有以下代碼,它工作正常,當您在插入項目後清除屬性時,除了。錯誤馬上顯示出來。敲除驗證和正確的方式來清除控件
ko.validation.configure({
insertMessages: false,
decorateElement: true,
errorElementClass: 'error'
});
FirstName: ko.observable().extend({
required: true
}),
,我有在淘汰賽視圖模型添加方法
addItem: function() {
if (!viewModel.isValid()) {
viewModel.errors.showAllMessages();
return false;
} else {
//DO SOMETHING
this.SomeCollection.push(newInterviewee);
this.FirstName(null);
}
},
我已經中HTML如下:
<div>
<label>First Name</label>
<input data-bind="value: FirstName, validationElement: FirstName, valueUpdate: 'keyup'" class="input" type="text">
</div>
<div>
<div>
<input data-bind="click: addItem" class="button" type="button">
</div>
的問題是,當我打電話this.FirstName(空)。錯誤馬上顯示!我希望只有在財產清除後按下按鈕時纔會顯示錯誤
嗯。當我調用viewMOdel.isValid(true)時出現此錯誤;除非您指定'寫入'選項,否則無法將值寫入ko.computed。如果您想讀取當前值,請不要傳遞任何參數。 – jmogera
isValid(true)如何爲你工作@Anzeo? – jmogera
是的,我得到了同樣的問題,我不得不在我們的代碼中查找它,並且今天編輯我的答案 – thomaux