gpt4 book ai didi

javascript - XPage 事件 onStart 和 onComplete 与 dojo.connect 结合使用

转载 作者:行者123 更新时间:2023-11-28 00:01:56 25 4
gpt4 key购买 nike

我想将 xp:eventHandler 事件 onStartonCompletedojo.connect 结合使用。

看一下这段代码:

    <xp:scriptBlock id="scriptBlock1">
<xp:this.value><![CDATA[
dojo.connect(dojo.byId("#{id:btnSubmit}"), "onclick", callbackOnClick);
dojo.connect(dojo.byId("#{id:btnSubmit}"), "onComplete", callbackOnComplete);

function callbackOnClick() {
alert("onclick works!!!");
}

function callbackOnComplete() {
alert("onComplete works!!!");
} ]]></xp:this.value>
</xp:scriptBlock>

<xp:button value="Submit" id="btnSubmit">
<xp:eventHandler event="onclick" submit="true" refreshMode="norefresh">
<xp:this.action><![CDATA[#{javascript:// do something on server side}]]></xp:this.action>
<!-- <xp:this.onComplete><![CDATA[alert("oncomplete");]]></xp:this.onComplete>-->
</xp:eventHandler>
</xp:button>

dojo.connect 非常适合 onclick-Event,但不适用于 onComplete-Event?

预先感谢您的回答。

最佳答案

虽然onclick是一个真实的浏览器事件(可以与dojo连接),但oncomplete事件仅由XPages的XSP对象提供。

当查看生成的 HTML 代码(取消注释掉示例的 onComplete 事件)时,您可以看到它的代码已转换为字符串(倒数第二个参数):

XSP.attachPartial("view:_id1:_id2", "view:_id1:btnSubmit", null, "onclick", function(){}, 2, "@none", null, "alert\u0028\u0022oncomplete\u0022\u0029;", null);

XSP._partialRefresh方法完成时评估该字符串。

这就是为什么你不能在这里使用dojo.connect

关于javascript - XPage 事件 onStart 和 onComplete 与 dojo.connect 结合使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31721007/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com