作者lueichun ()
看板java
標題[問題] 初學Primefaces,請教語法問題
時間Thu Jul 2 20:09:08 2020
※狀況概述:
以下的primefaces code,
可以做出讓calendar的起始日期、到期日期範圍被限制在一個範圍的效果,
例如起始日期選擇2020/6/27,那麼到期日期就只能從2020/6/27開始選擇,
6/26以前的日期不能選;或是到期日期選擇2020/6/25,
那麼起始日期就只能從2020/6/24之前開始選:
※程式碼:
<p:column>
<p:calendar id="fromDate" showOn="both" value="#{testAction.fromDate}"
binding="#{fromDate}" maxdate="#{toDate.value}">
<p:ajax event="dateSelect" partialSubmit="true"
process="@this, toDate" update="@this, toDate" />
<p:ajax event="change" partialSubmit="true"
process="@this, toDate" update="@this, toDate" />
</p:calendar>
</p:column>
<p:column>
<p:calendar id="toDate" value="#{testAction.toDate}" showOn="button"
binding="#{toDate}" mindate="#{fromDate.value}">
<p:ajax event="dateSelect" partialSubmit="true"
process="@this, fromDate" update="@this, fromDate" />
<p:ajax event="change" partialSubmit="true"
process="@this, fromDate" update="@this, fromDate" />
</p:calendar>
</p:column>
看起來是primefaces ajax的功能,
不過在這邊ajax的設定,除了設定觸發的事件外,
只是將日期所在的欄位id,透過process屬性,餵進ajax,
並透過partialSubmit屬性提交欄位值,也就是起始日期與到期日期;
並且透過update屬性,設定要刷新的欄位id。
除此之外並沒有設定對應的code來處理提交的欄位值,
那麼提交出去的欄位是如何處理的呢?是利用
primefaces ajax或calendar自身的設定或功能來處理嗎?
還有為甚麼觸發的事件會用到dateSelect、change這兩個??
日期改變就要能自動修改日期範圍不是嗎?那不能只用change事件就好?
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 111.241.215.11 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/java/M.1593691750.A.892.html
※ 編輯: lueichun (111.241.215.11 臺灣), 07/02/2020 20:09:35
※ lueichun:轉錄至看板 Web_Design 07/02 20:10