Xpages 页面加载时触发按钮onClick事件

Xpages 页面加载时触发按钮onClick事件,xpages,Xpages,我有一个xpage,其中添加了一个按钮。该按钮有一个操作组和后面的其他操作 由于某些原因,事件在页面加载时触发。我没有任何页面加载事件。按钮是一个核心控件,而不是dojo按钮 <xp:button id="button1" value="Approve Receiving Sheet" style="font-family:Arial;font-size:9pt;font-style:italic;width:180.0px" styleClass="button1">

我有一个xpage,其中添加了一个按钮。该按钮有一个操作组和后面的其他操作

由于某些原因,事件在页面加载时触发。我没有任何页面加载事件。按钮是一个核心控件,而不是dojo按钮

<xp:button id="button1" value="Approve Receiving Sheet"
    style="font-family:Arial;font-size:9pt;font-style:italic;width:180.0px"
    styleClass="button1">
<xp:eventHandler event="onclick" submit="true"  refreshMode="complete"     
     immediate="false" save="true"><xp:this.action><xp:actionGroup> 
<xp:this.condition>
 <![CDATA[#{javascript:var lookup = document1.getDocument().getUniversalID()
 var checkInvoices:string
 checkInvoices = @DbLookup("", "(Invoices by RS UNID)", lookup, 2)
 var returnValue = @If(@Implode(checkInvoices) == "", false, true)
 if(returnValue == false)
 {
    var x="alert('msg to user');"
    view.postScript(x)  
    return false
 }

 return true}]]></xp:this.condition><xp:confirm>


其他操作遵循条件操作。将按钮从button更改为submit没有任何作用。postscript消息显示为true或false,这就是我将其移动到if语句中的原因。提前谢谢,史蒂夫编辑:我的第一个答案不正确!这是第二个:

一旦调用actionGroup中的一个操作,就会计算条件。这意味着,只要“无事可做”,您的条件就不会被执行

但是您添加了一个确认操作:这种类型的操作生成一个CSJS代码块,并在呈现操作组之前检查其条件(也称为发送到浏览器)。这就是执行CSJS警报的原因

附言。
如果您多次单击该操作并将条件设置为false,则仍将显示确认消息。这似乎是一个bug。

你是对的。在条件操作之后,我确实有一个确认操作。我同意这看起来像一只虫子。谢谢你,斯文。