p:日历在p:tabView中不起作用

时间:2015-09-07 17:30:16

标签: javascript jsf primefaces calendar tabview

我在Tabview中的页面上有2个PrimeFaces日历控件。我有一个定义为弹出窗口(默认模式),另一个定义为按钮。

相关的输入字段显示在页面上,它们具有my bean的默认日期,但不显示日历控件。我也试过mode="inline",但日历没有显示。

<div class="ui-grid ui-grid-responsive">
  <div class="ui-grid-row">
    <div class="ui-grid-col-3">
      <p:panel>
        <h:form id="coursesListForm">
          <p:dataTable id="coursesList" value="#{manageClasses.courses}" var="course" rowKey="#{course.idAsString}" selectionMode="single" selection="#{manageClasses.selectedCourse}">
            <p:ajax event="rowSelect" process="@all" update="@form, tabView" />
            <p:column headerText="#{text['name']}">
              <h:outputText value="#{course.displayString}" />
            </p:column>
          </p:dataTable>
        </h:form>
      </p:panel>
    </div>
    <div class="ui-grid-col-9">
      <p:tabView id="tabView" activeIndex="#{manageClasses.tabIndex}" disabled="#{manageClasses.isTabViewDisabled}">
        <p:ajax event="tabChange" listener="#{manageClasses.onTabChange}" />
        <p:tab title="#{text['reports']}" id="reportTab">
          <h:form id="reportForm">
            <p:panelGrid columns="2">
              <p:outputLabel for="fromDateCalendar" value="#{text['Reports.from']}" />
              <p:calendar id="fromDateCalendar" value="#{reportRequest.fromDate}" showOn="button" />
              <p:outputLabel for="toDateCalendar" value="#{text['Reports.to']}" />
              <p:calendar id="toDateCalendar" value="#{reportRequest.toDate}" />
            </p:panelGrid>
          </h:form>
        </p:tab>
      </p:tabView>
    </div>
  </div>

1 个答案:

答案 0 :(得分:0)

这是由声明jquery.js库的菜单部分中不相关的javascript引起的。当我删除有问题的导入时,所有奇怪的Primefaces错误都消失了。似乎声明其他jquery库会干扰Primefaces代码。