敲除日期验证对象

Knockout date validation ob

我的问题是关于 Stack Overflow 上的一个旧问题:

Knockout validation

问题是关于 knockout.js 和 knockout.validation.js 中的日期验证。

有没有人有一个在 MVC 4 中验证日期条目的敲除绑定的好例子?

使用上述 link 我实现了以下示例:

ko.validation.rules['simpleDate'] = {
        validator: function (val, validate) {
            return ko.validation.utils.isEmptyVal(val) || moment(val, 'MM/DD/YYYY').isValid();
        },
        message: 'Invalid date'
    };

接下来我绑定规则:

self.ChildDateOfBirth = ko.observable().extend({ simpleDate: true });

这背后的整个想法是,如果用户输入 14/02/2009 然后失去焦点,那么框旁边会弹出一条消息作为无效日期。

一定是我哪里做错了...

添加验证规则后是否调用了ko.validation.registerExtenders();

根据documentation你需要调用它。

它在我的 jsfiddle 中工作。