【问题标题】:How to Perform a Javascript function using Primefaces wizard onnext attribute?如何使用 Primefaces 向导 onnext 属性执行 Javascript 函数?
【发布时间】:2016-05-12 15:51:50
【问题描述】:

我正在使用 PrimeFaces 5.3 并最终希望使用向导的 onnext 属性来使用 hideNextNav() 隐藏“下一步”按钮。但是,我目前只是尝试通过调用 next() 方法来测试此功能。由于我通常是 primefaces 和 jsf 的新手,因此我尝试过使用各种语法,但我所有的尝试都使 Next 按钮不起作用。当我尝试使用 alert() 时,它可以正常工作,显示一个消息框并进入下一个选项卡。

我的错误:

我的 xhtml 代码:

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

非常感谢您的帮助。

【问题讨论】:

  • next() 调用将触发onnext 事件。你到底想要什么?为什么你在next() 已经被调用的时候再调用next()? (因此您基本上是在无限循环中调用next(),如错误消息和堆栈跟踪所示)。
  • 大声笑你可能已经发现了这个问题。测试
  • 来吧,留下答案,我会标记的!我以前有其他问题,但不了解呼叫顺序。一切都按预期工作。

标签: javascript jsf primefaces widget


【解决方案1】:

打开下一个选项卡会触发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()

【讨论】:

  • 哈哈哈......你确定没有错过?
  • 我相信我理解了你的帖子。也许再举一个例子来确定:P
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-09-17
  • 2011-07-12
  • 2018-06-20
  • 1970-01-01
  • 1970-01-01
  • 2021-11-05
相关资源
最近更新 更多