是否可以使用“return false”中止<f:ajax>?</f:ajax>

时间:2011-07-18 13:19:51

标签: javascript ajax jsf jsf-2

如果你这样做:

<h:commandButton action="..." onclick="return false" />

不会发生这种行为。

同样不适用于<f:ajax>,这意味着这不起作用:

<f:ajax event="click" onevent="return false" listener="#{mrBean.doSomething()}" >
    <h:commandLink value="A Link"  \>
</f:ajax>

或者更确切地说,ajax操作会运行,我在javascript控制台中收到此错误:

Uncaught SyntaxError: Unexpected token return
myfaces._impl.core._Runtime.singletonExtendClass.chainjsf.js.jsf:7491
chainjsf.js.jsf:7696
(anonymous function)file.jsf
onclick

是否有办法以与<f:ajax>示例类似的方式通过javascript中止h:commandbutton操作?

1 个答案:

答案 0 :(得分:0)

我这样做了:

<f:ajax event="click" onevent="doTheRefreshingPart()" listener="#{mrBean.doSomething()}" >
    <h:commandLink value="A Link" onclick="return doTheConfirmationPart" \>
</f:ajax>

我将确认依赖的部分移动到实际的命令链接,并将部分刷新部分保留在<f:ajax>部分