我想要完成的是当用户使用KnockoutJS从HTML中的日期输入字段中选择日期时触发事件。无论用户选择的日期如何,我都想设置所选月份的第一天。
我不想在表单上发布日期字段。我希望当用户只从输入字段中选择日期时触发事件。
答案 0 :(得分:0)
如果将日期输入的value
绑定到observable,则可以subscribe
更改该observable并将值更改为所选月份的第一天。
这比我之前在这里写的答案更直接。
const vm = {
theDate: ko.observable('')
};
vm.theDate.subscribe(function(newValue) {
vm.theDate( newValue ? newValue.replace(/\d\d$/, '01') : '');
});
ko.applyBindings(vm);

<script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/3.4.2/knockout-min.js"></script>
<input type="date" data-bind="value: theDate">
&#13;