2011-12-28 9 views
0

私はこのVisualforceページを下に開くケースオブジェクトのボタンを持っています。私は保存後にウィンドウを閉じたいが、クローズコマンドをキャッチすることはできないようだ。それは、保存がクリックされたとき、ページがレコードを作成した後、ページをリフレッシュしてそのレコードを提示するときのことです。私はそれが記録を保存して終了したい。何か案は?保存後にポップアップビジュアルフォースウィンドウを閉じる

> <apex:page standardController="dingList__c"> 
    <apex:form > 
      <apex:pageBlock title="{!$User.FirstName} reason's for re-queuing:"> 
       <apex:pageMessages /> 
       <apex:pageBlockButtons > 
       <apex:commandButton action="{!save}" value="Save" status="closer" rerender="buttons"/> 
       <apex:commandButton value="Cancel" onclick="window.top.close()"/> 
       <apex:actionStatus startText="(Saving...)" stopText="" onStop="window.top.close();" id="closer"/> 
       </apex:pageBlockButtons> 
       <apex:pageBlockSection > 
        <apex:inputField id="reason" value="{!dingList__c.Reason__c}"/> 
       </apex:pageBlockSection> 
      </apex:pageBlock> 
     </apex:form> 
</apex:page> 

答えて

1

このマークアップをするVisualforceページを作成します。次に

<apex:page > 
    <script type="text/javascript"> 
     window.close(); 
    </script> 
</apex:page> 

を、ページに(JavaScriptやアペックスPageReferenceオブジェクトによって)リダイレクト。

0

Matthew、私はもっと簡単な方法があると思います。 これを行うことができます: 1. saveメソッドを呼び出すメソッドを作成します 2.このアクション関数を呼び出すJSメソッドを作成し、ウィンドウ上でclose()を呼び出します 3. onClick属性でJSメソッドを呼び出します2.

Voila! :)

関連する問題