Work on date binding

by pltaylor3

HTML

<script src="http://github.com/downloads/SteveSanderson/knockout/knockout-1.2.0.js"></script>
<p>Enter a Date value: <input data-bind="date: someValue" /></p>

<p>Resultant value: <divt data-bind="text: someValue" /></p>

Should read 5/4/2012 at load

JavaScript

ko.bindingHandlers.date = {
    init: function (element, valueAccessor) {
        var jsonDate = valueAccessor();
        var value = new Date(parseInt(jsonDate().substr(6)));
        var ret = value.getMonth() + 1 + "/" + value.getDate() + "/" + value.getFullYear();
        $(element).val(ret);
    },
    update: function(element, valueAccessor) {//parse date
        var date = $(element).val();
        var firstIndex = date.indexOf('/');
        var month = date.substring(0, firstIndex);
        
        var jsonDate = valueAccessor();
        var value = new Date(parseInt(jsonDate().substr(6)));
        value.setMonth(month);

        var jsonValue = value.valueOf();
        var output = '/Date(' + jsonValue + ')/';
        jsonDate(output);
        
    }
};

var viewModel = {
    someValue : ko.observable("/Date(1336151100000)/")  
};
ko.applyBindings(viewModel);