【发布时间】:2014-12-29 20:42:17
【问题描述】:
我目前正在做一个需要使用 jQuery datepicker 的项目。一切都很好,除了一个要求......用户需要能够输入“智能日期”。智能日期是一种简写语法,用于轻松生成未来或过去 X 天的日期。输入日期的语法是加号 (+) 或减号 (-) 后跟一个整数,表示从今天算起的天数。我已经在我的日期选择器配置中设置了constrainInput 标志,以允许用户输入符号。我的问题是:在输入数字字符的每个实例中,我希望日历更新以显示当前“选定”的日期,但是在您使用 setDate 操作时,日期选择器会控制输入并更改用户输入的文本。我钻研了一下源代码,发现_setDate方法有第二个参数叫noChange,但是通过以下方式传递标志没有效果:
$ele.datepicker('setDate', date, true);
我对 jQuery UI 和 datepicker 插件本身围绕这个组件抛出的各种抽象级别不够熟悉,所以我很难在不花太多时间挖掘源代码的情况下设计一个解决方案。
有没有人可以提供一些帮助?将不胜感激!
对于那些想看一些代码的人,你可以在这里查看我的 codepen:'Smart Date Module'
第二个输入是用户输入,第一个是支持 Angular 的模型。
【问题讨论】:
标签: angularjs jquery-ui datepicker