如何在Liferay 6.2 CE GA2中设置<aui:input>标签的日历日期和区域设置?</aui:input>

时间:2014-09-09 14:35:04

标签: java date calendar liferay-6 liferay-aui

我目前无法设置<aui:input>代码的日历日期和区域设置格式:

  • 它仍显示空的非本地化输入模式(mm / dd / yyyy)
  • 点击展开日历时,即使指定了Date值,所选日期也始终如此
  • 如果在日历中选择了日期,则输入字段将填入所选日期,但格式错误(仍为mm / dd / yyyy)

由于我的声誉,我无法上传图片或共享多个链接,因此我将前面提到的这三个案例合并到here中的单个图片中。

这就是我目前在.jsp文件中所做的事情:

<%
Calendar calendar = CalendarFactoryUtil.getCalendar(themeDisplay.getTimeZone(), themeDisplay.getLocale());
Date date = new Date(571096800000l); // A random date different than NOW.
calendar.setTime(date);
System.out.println("calendar date = " + calendar.getTime()); // Fri Feb 05 22:00:00 GMT 1988

Format formatter = FastDateFormatFactoryUtil.getDate(themeDisplay.getLocale(), themeDisplay.getTimeZone());
String formattedDate = formatter.format(date);
System.out.println("formatted date = " + formattedDate); // formatted date = 5.02.88
%>

<aui:input type="date" name="test1" value="<%= calendar %>"/>
<aui:input type="date" name="test2" value="<%= calendar.getTime() %>"/>                 
<aui:input type="date" name="test3" value="<%= date %>"/>
<aui:input type="date" name="test4" value="<%= date.getTime() %>"/>
<aui:input type="date" name="test5" value="<%= date %>"/>
<aui:input type="date" name="test6" value="<%= date.getTime() %>"/>
<aui:input type="date" name="test7" value="<%= formattedDate %>"/>

非常感谢你的时间!

2 个答案:

答案 0 :(得分:4)

似乎你已经成功地欺骗了自己认为Liferay中的AlloyUI实际上支持type =&#34; date&#34;,它没有。您在屏幕截图中看到的日历由Chrome提供,因为AlloyUI构造了一个输入类型=&#34; date&#34;然后Chrome会执行HTML5魔术并为您提供日期输入。

正确答案是AUI根本不支持日期输入,您必须将实现切换为其他内容。建议的liferay-ui:输入日期是一个很好的选择,但如果你更喜欢更好的东西,那么试试jQuery UI datepicker,它允许你指定你提交给服务器的显示格式和替代格式。

不好的一面是你可能应该实现自己的taglib以使其可以重复使用。

答案 1 :(得分:2)

尝试以下代码段..

  

&LT; liferay-ui:input-date cssClass =“&lt;%= cssClass%&gt;”

     

dayNullable =“&lt;%= dayNullable%&gt;”

            dayParam='<%= fieldParam + "Day" %>'
             dayValue="<%= day %>"
             disabled="<%= disabled %>"
             firstDayOfWeek="<%= firstDayOfWeek %>"
             formName="<%= formName %>"
            imageInputId='<%= fieldParam + "ImageInputId" %>'
            monthNullable="<%= monthNullable %>"
            monthParam='<%= fieldParam + "Month" %>'
            monthValue="<%= month %>"
            yearNullable="<%= yearNullable %>"
            yearParam='<%= fieldParam + "Year" %>'
            yearRangeEnd="<%= yearRangeEnd %>"
            yearRangeStart="<%= yearRangeStart %>"
            yearValue="<%= year %>"
        />

更多信息是here