【发布时间】:2013-08-03 17:07:50
【问题描述】:
(目前这只适用于 Chrome,因为大多数浏览器还没有为 input type="date" 实现日期选择器)
在以下示例中,MyDate 以具有当前日期的 Date 对象开始,但日期输入不会获取该对象(它期望其格式为格式为 YYYY/MM/DD 的字符串)。
一旦您在选择器中选择了日期,MyDate 就会变成上述格式的字符串。
如何绑定它,以便 MyDate 保持 javascript Date 并由输入控件正确解释?
见见http://jsfiddle.net/LLkC4/3/:-
<input data-bind="value : MyDate" type="date">
<hr>
<span data-bind="html: log" />
<script>
var viewModel = {
MyDate : ko.observable(new Date()),
log : ko.observable(""),
logDate : function () {
this.log(this.log() + this.MyDate() + " : " +
typeof(this.MyDate()) + "<br>");
}
};
viewModel.MyDate.subscribe(function (date) {
viewModel.logDate();
});
ko.applyBindings(viewModel);
viewModel.logDate()
</script>
【问题讨论】:
标签: javascript html knockout.js