2012-08-15 57 views
0

調用事件blur時是否可以調用f:ajax監聽器,但只有當inputtest字段值不爲空時纔可以調用f:ajax監聽器?JSF f:只有當inputtext不爲空時,ajax監聽器調用bean方法

當inputtext blured我調用一個方法在我的託管bean,它返回所有其他表單字段。問題是當我模糊一個emtpy字段,因爲它是一個必需的字段,我得到一個驗證消息,但在這種情況下,我不希望它調用託管bean方法,只有當它裏面有一個值。

這件事怎麼辦?

感謝提前。

+0

您可以使用JavaScript代碼在'onevent'標籤屬性中對此進行驗證。 – 2012-08-15 14:36:02

+1

你的問題很難理解。發生驗證錯誤時,ajax監聽器方法已經不被調用。具體問題到底是什麼?驗證錯誤已顯示在空場的模糊處? – BalusC 2012-08-15 14:52:05

+0

@BalusC:是的,開着一個空場,我不想要採取任何行動.. – user590586 2012-08-19 08:27:01

回答

0

使用event="change"而不是event="blur"或只是完全刪除event屬性,它已經默認爲change。通過這種方式,該字段只會在真正更改時纔會提交(並驗證),因此當最終用戶離開該字段時,該字段就不再存在。

+0

還沒有機會測試它,很快就會試用,謝謝。 – user590586 2012-08-29 12:26:03

+0

我很抱歉的延遲..我仍然得到UIinput.REQUIRED驗證錯誤消息。我希望這個行爲能夠在條件允許的情況下執行 - 只有當輸入不是empy才能執行該行爲時。是否可以用另一種方式?謝謝。 – user590586 2012-11-26 16:04:25

相關問題