Knockout Validation Demo

by Jorgelig

HTML

<script src="http://knockoutjs.com/downloads/knockout-2.2.0.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/knockout-validation/1.0.2/knockout.validation.min.js"></script>
<div>
    <p>Name: <input type="text" data-bind="value: name" required/></p>
</div>

<pre data-bind="text: ko.toJSON($root, null, 2)"></pre>

JavaScript

var MainModel = function() {
    this.name = ko.observable().extend({
        validation: {
            validator: function (val) {
                if (val !== 'a') {
                    this.message = 'the value ' + val + ' is not a';
                    return false;
                }
                return true;
            }
        }
    });
    ko.validation.registerExtenders();
};

var model = new MainModel();
ko.applyBindings(model);