博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
salesforce零基础学习(九十四)classic下pagelayout引入的vf page弹出内容更新此page layout...
阅读量:4512 次
发布时间:2019-06-08

本文共 1207 字,大约阅读时间需要 4 分钟。

我们在classic环境中,有时针对page layout不能实现的地方,可以引入 一个vf page去增强标准的 page layout 功能,有时可能要求这个 vf page的部分修改需要更新此 page layout 或者当前这个vf page弹出的新的window的改动需要刷新这个整体的page layout,项目中遇见了这种需求,因为前端不好,费了一些时间去解决了他,mark一下后期有遇见同样的场景,可以直接拿过来用了。

下面我们的demo根据 当前引入的vf page弹出新的窗口,窗口对当前 page layout的部分的变量进行重新赋值需要刷新自动此page layout达到预期效果。

 GoodsDemoPage.page:用于展示一个按钮,点击此按钮弹出来一个子页面

1 
2
12
13
14
15

GoodsDemoDirectPage.page:用于清空Goods中的Status的状态并且更新父层面的page layout.

1 
2
3
19
20
21
22

将GoodsDemoPage配置在Goods__c这个sObject的page layout即可。点击‘清空Status状态’按钮以后,会弹出来一个页面,点击页面中的‘清空’按钮以后弹出的页面会关闭并且当前的 page layout会自动刷新。

这里主要有两个关键点:window.top以及window.opener。这两个区别如下:

window.top用于返回顶层窗口,即浏览器的窗口。GoodsDemoPage嵌在了page layout中,则针对 GoodsDemoPage来说,其window.top指向的就是当前的 page layout对应的窗口。

window.opener用于返回打开此页面的页面。针对GoodsDemoDirectPage,其由GoodsDemoPage打开,所以针对GoodsDemoDirectPage来说,其window.opener指向的是GoodsDemoPage。所以针对这个demo中我们只需要通过window.opener调用GoodsDemoPage的refreshPageLayout方法,然后在方法中使用window.top指向到当前的URL刷新即可。

总结:篇中主要涉及到js的知识,因为本人js比较菜,如果有错误或者更好的方式欢迎指出,有不懂的欢迎留言。

转载于:https://www.cnblogs.com/zero-zyq/p/11255327.html

你可能感兴趣的文章
端口作用
查看>>
不同web应用登录方案
查看>>
利用css制作横向和纵向时间轴
查看>>
Generic(泛型)
查看>>
009 如何更好地进行沟通
查看>>
NFC NDEF vcard
查看>>
mininet test
查看>>
OOP
查看>>
找出数组中的重复元素
查看>>
Apache服务器配置
查看>>
ClickOnce清单签名取消后依然读取证书的问题
查看>>
POJ 1083
查看>>
单变量微积分笔记16——定积分的应用1(对数与面积)
查看>>
ACM模板——最短路
查看>>
实验3 分支语句和循环语句(1)
查看>>
JSP页面上添加Fckeditor
查看>>
scrapyd spiderkeeper docker部署
查看>>
Qt教程
查看>>
http://linux-mtd.infradead.org/doc/nand.html nand
查看>>
Verilog语言:还真的是人格分裂的语言
查看>>