javascript - AUI 日期选择器错误和解决方法

标签 javascript datepicker yui liferay-aui

我正在检查 Liferay Site用于 Alloy UI 日期选择器。

给定示例中的问题是没有选择选项。如果我的用户的 DOB 在 70 年代,那么用户必须多次单击后退按钮。

aui datepicker from above link

这对用户来说不是一个愉快的场景。如何将我的 AUI javascript 编辑为 jquery here 给出的月份和年份选项

最佳答案

我假设您在这里使用的是 AlloyUI 1.5,因此我建议您使用 DatePickerSelect组件,但使用 display: none; 隐藏不需要的 select 元素。假设您只想要一个年份下拉列表,您可以隐藏月份和日期下拉列表。我在这里创建了一个可运行的片段示例:

AUI().use('aui-datepicker', function (A) {
    var datePicker = new A.DatePickerSelect({
        dayNode: '#day',
        monthNode: '#month',
        yearNode: '#year',
        calendar: {
            dateFormat: '%m/%d/%Y'
        },
        render: true
    });

    // Working around the fact that the calendar does not get updated
    // when a new year is selected:
    var yearNode = A.one('#year');
    yearNode.on('change', function(event) {
        datePicker.calendar.set('currentYear', yearNode.get('value'));
        var date = datePicker.calendar.date;
        datePicker.calendar.clear();
        datePicker.calendar.date = date;
    });
});
<script src="http://cdn.alloyui.com/1.5.1/aui/aui-min.js"></script>
<link href="http://cdn.alloyui.com/1.5.1/aui-skin-classic/css/aui-skin-classic-all-min.css" rel="stylesheet">

<div id="datePicker">
    <select id="month" style="display: none;">
        <option></option>
    </select>
    <select id="day" style="display: none;">
        <option></option>
    </select>
    <select id="year">
        <option></option>
    </select>
</div>

关于javascript - AUI 日期选择器错误和解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9293811/

相关文章:

javascript - 如何将日期选择器插入 MS Excel 单元格

javascript - 如何将 YUI 3 Slider 小部件设置为 100% 宽度

javascript - jQuery:如果一个字段有Class,则计算其他字段中的单词数

javascript - async await 如何在 JavaScript 中使用 setTimeout()

javascript - 检查 JSON 对象中是否存在键

javascript - 如何更新 PWA 中的 Service Worker 缓存?

jquery - knockout 中的日期选择器绑定(bind)

javascript - 如何禁用日期选择器上的过去日期

phpUnit 配置选项

internet-explorer - 富文本 (YUI) 编辑器在 IE11 上损坏