0
我已經添加2個A4J支持標籤到RichFaces的日曆,一個與的onblur事件,而另一個具有一個oninputblur事件,這將允許用戶點擊從日曆中選擇日期,或者手動輸入日期。用戶也可以點擊選擇日期,然後也可以手動編輯日期。這兩個標籤reRender相同的日曆組件ID。在目前爲止的測試中,這是行得通的,但我想知道是否有可能發生servlet異常,如果它嘗試在同一個ID上「重複」兩次?我想這不會是因爲他們都是不同的事件,但如果有人看到我的擔憂,我會真誠地感謝他們的反饋。以下是我所指的代碼片段。多A4J支持標籤(煤層2.2)日曆組件
<s:decorate id="acctHldrBthDtField" template="/layout/edit.xhtml">
<ui:define name="label">Account Holder Birth Date</ui:define>
<rich:calendar id="acctHldrBthDt"
value="#{P18SlipHome.instance.acctHldrBthDt}"
datePattern="dd-MMM-yyyy" enableManualInput="true"
onfocus="saveCurrentFocus(this);" >
<a:support event="onblur" reRender="acctHldrBthDtField" ajaxSingle="true"/>
<a:support event="oninputblur" reRender="acctHldrBthDtField" ajaxSingle="true"/>
</rich:calendar><br/>Date format must be dd-Mmm-yyyy
</s:decorate>
對不起,我應該仔細審查我的答案在提交之前。這需要更多的解釋:我認爲重複的ID關注是沒有根據的 - 我沒有用上述解決方案來解決它。我解決的另一個問題是關於何時手動輸入無效日期,然後從彈出的日曆中選擇正確的日期,然後單擊另一個字段不會**使驗證錯誤消失。使用不同事件的2nd a4j支持標籤解決了該問題。再次,如果這個答案引起混淆,我很抱歉。 – Randy