Я изучал различные методы использования проверки нокаута для сравнения дат. Я не могу заставить его работать с моими объективами в объекте validatedObservable.Нокаут-валидация - дата больше, чем другая дата
Мне нужно, чтобы validatedObservable проверял, прошла ли проверка нажатой кнопки нажатием кнопки - это моя группировка элементов управления.
Вот мой демо:
<script src="~/Scripts/jquery-1.10.2.min.js"></script>
<script src="~/Scripts/knockout-2.3.0.js"></script>
<script src="~/Scripts/knockout.validation.min.js"></script>
<script src="~/Scripts/moment.min.js"></script>
<form>
<table>
<tr>
<td>Name:</td>
<td><input type="text" data-bind="value:contactForm().name" value="" /></td>
</tr>
<tr>
<td>From:</td>
<td><input type="text" data-bind="value:contactForm().fromDate" value="" /></td>
</tr>
<tr>
<td>To:</td>
<td><input type="text" data-bind="value:contactForm().toDate" /></td>
</tr>
</table>
<button type="button" data-bind='click: submit'>Submit</button>
</form>
<script>
ko.validation.init({
messagesOnModified: false,
parseInputAttributes: true,
grouping: {
deep: true
}
});
var myViewModel = function() {
var self = this;
self.contactForm = ko.validatedObservable({
name :ko.observable().extend({ required: true }),
fromDate :ko.observable('2014-11-10').extend({ date: true }),
toDate: ko.observable('2014-11-10').extend({date: true, min: this.fromDate })
});
submit = function() {
console.log(this.contactForm.isValid())
};
};
ko.applyBindings(new myViewModel());
</script>
Я в принципе не могу получить работу этой линии:
toDate: ko.observable('2014-11-10').extend({date: true, min: this.fromDate })
кого-либо идеи?
Спасибо за это, была у него в течение нескольких часов – Frames84