That doesn't work for me, it is the same result as my own function, that it displays fine but not observable right.
ko.bindingHandlers.moment = {
update: function (element, valueAccessor, allBindingsAccessor, viewModel) {
var val = valueAccessor();
var formatted = null;
var date = moment(ko.utils.unwrapObservable(val));
var format = allBindingsAccessor().format || 'MM/DD/YYYY';
if (date && date.isValid()) {
formatted = date.format(format);
}
element.innerText = formatted;
}
};
The below doesn't save right, it is a Jquery UI date picker
<input data-bind="moment:sampleReceivedDate, event{change :$parent.save}" class="datepicker">
But this works fine
<input data-bind="value:sampleReceivedDate, event{change :$parent.save}" class="datepicker">