【Apex+Visualforce】action処理後にJavascript

Salesforce

Apexのaction処理後に、Javascriptのfunctionを実行する方法。

どんな仕掛けをすればいいかな~と考えていたのですが、apexタグのoncompleteを使うだけ、意外と簡単に実装できたのでメモ。

<!-- Visualforceページ -->
<apex:page id="pg" controller="AfterJSController">
    <apex:form id="frm">
    	<apex:commandButton value="ボタン" action="{!buttonClick}" oncomplete="afterAction();" reRender="frm"/>
        <script type="text/javascript">
        	function afterAction() {
                alert('{!msg}');
            }
        </script>
    </apex:form>
</apex:page>
/**
 * Controllerクラス.
 */
public class AfterJSController {
    
    public String msg{get; set;}
    
    public AfterJSController() {
        this.msg = '';
    }
    
    public void buttonClick() {
    	this.msg = 'action実行したよ!';
    }
}

動作確認

ボタンをクリックすると・・

Javascriptが実行されました~

コメント

タイトルとURLをコピーしました