如何从富:日历获取javascript日期?

时间:2012-02-07 15:12:31

标签: javascript jsf-2 richfaces

我想从javascript中的rich:calendar组件中获取日期,以便将其与其他日期进行比较,并禁用彼此超过或低于的日期(“from”date from the after after“to”date“ )我知道如何禁用日期,但我无法得到日期, 我试过了:

#{rich:element('FromDate')}.component.getSelectedDate().getTime()
#{rich:component('FromDate')}.getSelectedDate().getTime()
#{rich:component('FromDate')}.Date.getTime()
#{rich:component('FromDate')}.getTime()

这个想法是在它做出像

这样的比较之后
function disablementFunction(day){
    if (#{rich:element('FromDate')}.component.getSelectedDate().getTime() -
      day.date.getTime() >= 0) { 
        return false;
    }
    return true;
}

2 个答案:

答案 0 :(得分:3)

您可以使用Richfaces js api获取当前日期:

RichFaces.$('FromDate').currentDate.getTime()

只是为了澄清您的代码段将变为:

function disablementFunction(day){
    if (RichFaces.$('FromDate').currentDate.getTime() >= 0) { 
        return false;
    }

    return true;
}

当然,你仍然可以使用el表达来引用这个日期:

#{rich:component('FromDate')}.currentDate.getTime();

答案 1 :(得分:0)

<%@ taglib uri="http://richfaces.org/rich" prefix="rich"%>

    <rich:calendar id="clndUATOnDateId" datePattern="dd-MMM-yyyy"></rich:calendar>

    <h:commandButton title="Submit" value="Submit" onclick="addUATDates();"></h:commandButton>

    <script type="text/javascript">
        function addUATDates() {
            var uatOn = document.getElementById("addUATDateForm:clndUATOnDateIdInputDate");
            alert(uatOn.value);
        }
    </script>

在脚本中的clndUATOnDateId之后写入'InputDate'以获取日期。         选定的富日历日期(例如:2012年9月15日)的输出显示在警报弹出窗口中。