1

我有一个基于操作组的按钮。我想要一个停止处理按钮的动作——停止触发下一个动作。

我尝试了确认操作,但用户可以单击确定,它将继续。我尝试了一个返回 false 的执行脚本,但没有做任何事情。

我一直在阅读有关事件处理程序的信息,但不确定如何将其合并到按钮的代码本身中。

这是按钮后面的当前代码:

<xp:button id="button1" value="Create Account">
    <xp:eventHandler event="onclick" submit="true"
        refreshMode="complete" id="eventHandler1">
        <xp:this.action>
            <xp:actionGroup>
                <xp:modifyField
                    name="ac_Key" value="#{javascript:@Unique()}"
                    var="document1">
                </xp:modifyField>
                <xp:saveDocument></xp:saveDocument>
                <xp:openPage
                    name="/successAccount.xsp">
                </xp:openPage>
            </xp:actionGroup>
        </xp:this.action>
    </xp:eventHandler>
</xp:button>

感谢你的帮助!

4

1 回答 1

4

此简单示例仅在用户选择确定时才使用确认操作继续。如果用户单击取消,则不会再发生任何事情。如果用户单击确定,浏览器将打开 index.xsp 页面。

<xp:button value="Label" id="button1">
    <xp:eventHandler event="onclick" submit="true" refreshMode="complete">
        <xp:this.action>
            <xp:actionGroup>
                <xp:confirm message="Sure?"></xp:confirm>
                <xp:openPage name="/index.xsp"></xp:openPage>
            </xp:actionGroup>
        </xp:this.action>
    </xp:eventHandler>
</xp:button>

更新:此示例在 actionGroup 上使用一个条件,如果条件为 false,则可以阻止 actionGroup 执行:

<xp:actionGroup condition="#{javascript:validateSomething()}">
    <xp:save name="/opskrifter.xsp"></xp:save>
</xp:actionGroup>
于 2013-02-21T08:23:13.263 回答