2016-03-01 3 views
0

Я разрабатываю технологию страницы с использованием jsf 2.0 и простых поверхностей. На моей странице я вставляю календарь с первыми лицами. Когда пользователь нажимает на календарь, чтобы изменить дату по умолчанию, отображается предупреждающее сообщение, которое представляет собой диалоговое окно, содержащее две кнопки команд. Теперь то, что я пытаюсь сделать, - это когда пользователь нажимает кнопку отмены команды, дата должна быть возвращена к дате по умолчанию, которая была заполнена с первой страницы времени при загрузке страницы. Я написал java-скрипт, но он не работает.сбросить границы даты календарной даты до системной даты

<label>Date<label> 
<p:calendar readonlyInput="true" widgetVar="calDate" yearRange="c-20:c+20" navigator="true" id="b1incomeeffectfrom#{incmStatus.index}" value="#{userDate.effectiveFrom}" pattern="dd/mm/yyyy"> 
    <p:ajax event="dateSelect" oncomplete="checkForDefault(this);" global="false"/> 
</p:calendar> 

<p:dialog rendered="#{user.Lock}" widgetVar="dlg1" header="Warning" modal="true"> 
    <h:panelGroup layout="block" styleClass="modal-dialog"> 
    <h:panelGroup layout="block" styleClass="modal-content"> 
     <h:panelGroup layout="block" styleClass="modal-body"> 
     <div class="form-horizontal"> 
      <h:panelGroup layout="block" styleClass="form-group"> 
      <h:outputLabel styleClass="col-xs-8 control-label">Are you sure want to change?</h:outputLabel> 
      </h:panelGroup> 
     </div> 
     </h:panelGroup> 
     <h:panelGroup layout="block" styleClass="modal-footer"> 
     <p:commandButton value="Ok" type="button" styleClass="btn btn-primary" onclick="PF('dlg1').hide();PF('dlg2').show();" /> 
     <p:commandButton value="Cancel" type="button" styleClass="btn btn-primary" onclick="resetDate();" /> 
     </h:panelGroup> 
    </h:panelGroup> 
    </h:panelGroup> 
</p:dialog> 

Javascript

function resetDate(){ 
    PF('dlg1').hide(); 
    calDate.setDate(null); 
} 
+0

Как диалог связан с проблемой? ? И почему вы создаете диалог в диалоговом окне? Диалоговое окно PF имеет графы заголовка/тела/нижнего колонтитула /. – Kukeltje

ответ

0

Ваш календарь значение, исходящее от подложки боба (userDate.effectiveFrom). Вам необходимо будет изменить значение там, которое должно вступить в силу

<p:commandButton value="Cancel" type="button" styleClass="btn btn-primary" 
onsuccess="PF('dlg1').hide()" action="#{userDate.resetDate()}" update="calDate" /> 

class UserDate{ 
[..] 

    public void resetDate(){ 
    this.effectiveFrom = initialDate; 
    } 
[..] 
} 
Смежные вопросы