Salesforce -- 自定义按钮弹出VisualForce页面,页面关闭后刷新原页面

来源:互联网 发布:手机照度计算软件 编辑:程序博客网 时间:2024/06/12 03:06

1.自定义按钮JS:

//打开新页面/窗口var new_window = window.open('/apex/RelationUnitBuSetPage?rucId={!Relation_Unit__c.Id}');    //循环检测窗口是否关闭    var loop = setInterval(function() {           //如果新窗口关闭了,刷新原来的页面          if(new_window.closed) {                clearInterval(loop);                window.location.reload();        }        }, 1000);

2.Visualforce页面:

<apex:page standardController="Relation_Unit__c" extensions="RelationUnitBuSetPageController" readOnly="false" showHeader="false" sidebar="false">    <apex:form id="form">        <script>        function closeWindow(){            //判断标志位关闭本window(commandButton逻辑执行完后,关闭本页面)            if ({!refreshNumber} == 1) {                window.close();            }        }        </script>        <!-- <apex:pageMessages /> -->        <div align="center">            <c:RoseMultiselectPicklist leftLabel="可选BU" leftOption="{!allBus}" rightLabel="已选BU" rightOption="{!selectedBu}" size="5" width="200px" recordId="{!recordId}" />        </div>        <br/>        <div align="center">        //这里使用oncomplete监听commandButton执行完成后的方法,需要添加reRender获取最新的refreshNumber标志位的值            <apex:commandButton action="{!doSave}" value="保存修改" style="width: 80px" oncomplete="closeWindow()" reRender="form"/>        </div>    </apex:form></apex:page>

3.Controller设置标志位判断是否要刷新页面

阅读全文
0 0
原创粉丝点击