2016-05-12 42 views
1

我正在使用PrimeFaces 5.3並最終希望使用嚮導的onnext屬性來使用hideNextNav()隱藏Next按鈕。但是,我目前只是試圖通過調用next()方法來測試此功能。由於我對通用的primefaces和jsf是新手,我嘗試過使用各種語法,但是我所有的嘗試都使Next按鈕無法使用。當我嘗試使用alert()時,它會正常工作,顯示一個消息框並繼續到下一個選項卡。如何使用Primefaces嚮導onnext屬性執行Javascript函數?

我的錯誤:

jsf error

我的XHTML代碼:

<script> 
    function nextf(){ 
     PF('wizard').next(); 
    } 
</script> 
... 
<p:wizard widgetVar="wizard" flowListener="#{editController.onFlowProcess}" onnext="nextf();"> 

您的幫助將不勝感激。

+1

'next()'調用將觸發'onnext'事件。你究竟想要什麼?爲什麼你在調用next()時再次調用next()? (因此你基本上是在無限循環中調用next(),如錯誤消息和堆棧跟蹤所顯示的那樣)。 – BalusC

+0

哈哈,你可能已經發現了這個問題。測試 –

+0

繼續並留下一個答案,我會標記它!我以前有其他問題,但不理解呼叫順序。一切按預期工作。 –

回答

4

打開下一個選項卡會觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。 onnext事件函數依次觸發PF('wizard').next()調用。 PF('wizard').next()反過來觸發onnext事件。等等。

然後超出最大調用堆棧大小。

onnext活動期間,您最好不要致電PF('wizard').next()

+2

哈哈哈......你確實沒有想過嗎? – Kukeltje

+0

我相信我瞭解你的帖子。也許還有一個例子可以肯定:P –