设置合金UI timepicker时隙

时间:2016-05-31 11:08:24

标签: liferay liferay-6 liferay-aui alloy-ui

我的表格中有一个合金ui timepicker。我只想在输入字段中显示小时数。 但问题是Alloy UI在30分钟内分割了Timeslots。这样我的输入字段显示相同的小时2次

A.use('aui-timepicker', function(A) {
    new A.TimePicker({
        trigger : 'input#<portlet:namespace/>endTime',
        mask : '%H',
        popover : {
            zIndex : 1011
        },
        on : {
            selectionChange : function(event) {
                console.log(event.newSelection)
            }
        }
    });
});

Minutes&amp;时间

  • 00:00
  • 00:30
  • 01:00
  • 01:30

仅数小时

  • 00
  • 00
  • 01
  • 01

1 个答案:

答案 0 :(得分:2)

不幸的是,AlloyUI TimePicker API docs没有记录任何功能来更改values attribute之外的时间元素之间的步骤。解决方案是将values属性设置为您想要的值。一种简单的方法是创建一个具有所需值的数组:

var values = [];

for (var i = 0; i < 24; i++) {
  values.push(i.toString());
}

然后只需将values属性设置为创建的数组:

YUI().use('aui-timepicker', function(Y) {
  new Y.TimePicker({
    /* Your code here... */
    mask: '%H',
    values: values
  });
});

这是一个可运行的例子:

&#13;
&#13;
var values = [];

for (var i = 0; i < 24; i++) {
  values.push(i.toString());
}

YUI().use('aui-timepicker', function(Y) {
  new Y.TimePicker({
    mask: '%H',
    trigger: '#input',
    values: values,
    popover: {
      zIndex: 1
    }
  });
});
&#13;
<script src="http://cdn.alloyui.com/2.0.0/aui/aui-min.js"></script>
<link href="http://cdn.alloyui.com/2.0.0/aui-css/css/bootstrap.min.css" rel="stylesheet"></link>
<input id="input" />
&#13;
&#13;
&#13;