0

ボタンを追加した 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>

その他のアクションは、条件付きアクションに従います。ボタンをボタンから送信に変更しても何も起こりません。Postscript メッセージは true または false で表示されていたので、if ステートメントに移動しました。前もって感謝します、スティーブ

4

1 に答える 1

1

編集:私の最初の答えは正しくありませんでした!これが2番目のものです:

条件は、actionGroup内のアクションの1つが呼び出されるとすぐに計算されます。これは、「何もすることがない」限り、条件が実行されないことを意味します。

ただし、確認アクションを追加しました。このタイプのアクションは、CSJSコードブロックを生成し、レンダリングされる前にアクショングループの状態をチェックします(ブラウザーへの送信とも呼ばれます)。これが、CSJSアラートが実行される理由です。

PSアクションを複数回クリックし、条件をfalseに設定した場合でも、確認メッセージが表示されます。これはバグのようです。

于 2012-12-03T09:52:49.183 に答える