您的位置:首页 > 其它

Primefaces AJAX callbacks: onstart vs. onclick

2013-07-24 14:49 260 查看


Primefaces AJAX callbacks: onstart vs. onclick

I just learned the hard way that onstart and onclick are not the same thing.

In particular, a "return ..." has very different semantics in both cases.

Consider this code:

<p:commandLink action="#{bean.method}" onstart="return func()" ...>


If "func()" return false, this code will abort the AJAX request and bean.method() won't get called.

If "func()" returns true, the AJAX request processes.

If you replace onstart with onclick, the AJAX request will abort even if func() returns true.

That's because the Primefaces puts the code to generate the AJAX request in the onclick handler, pre-pending your code from the p:commandLink onclick before it. If your code returns, the AJAX request never gets sent.
http://wrschneider.blogspot.com/2012/01/primefaces-ajax-callbacks-onstart-vs.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: