MaterializeCSS日期选择器:setDate不更新视图

时间:2018-08-15 16:54:09

标签: javascript datepicker materialize

使用MaterializeCSS 1 rc2,我尝试从Javascript更新DatePicker的日期。

我的HTML

<form action="#" novalidate>
   <input type="text" class="datepicker" name="date" id="datepicker">
</form>

我的JS

function changeDate(date) {
    /* date is a javascript Date object */
    var datepicker = document.getElementById('datepicker');
    var instance = M.Datepicker.getInstance(datepicker);
    instance.setDate(date);
}

在控制台上,所有变量都设置为其期望值。当我单击DatePicker时,这也是显示的预期日期(我在changeDate中使用的日期)。但是输入字段中的文本不会更改...

2 个答案:

答案 0 :(得分:3)

我的朋友,您在MaterializeCSS中发现了一个错误!

我可以建议您使用我的解决方法:在致电instance._finishSelection()后致电instance.setDate()来查看您的更改。

答案 1 :(得分:0)

当前(“ materialize-css”:“ ^ 1.0.0”)可以通过以下方式实现:instance.setInputValue

打字稿代码:

const datepickerInstance = M.Datepicker.getInstance(datepickerEl[0]);
datepickerInstance.setDate(date);
datepickerInstance.setInputValue();