我们在使用formula或者validation rules等的时候通常会接触到很多function,这些函数很便捷的解决了我们很多问题。其实很多函数也可以应用在VF页面中,VF页面有时候应该善于使用相关的常量和函数,便捷我们的开发。

一.常用的global variable篇

1.$CurrentPage:通过CurrentPage变量你可以获取当前页面的页面名称,URL以及参数(param)值;

 <apex:page >
此页面的页面名称: {!$CurrentPage.Name}<br/>
此页面的URL:{!$CurrentPage.URL}<br/>
对此页面传递一个参数,key为param,此param对应的value为:{!$CurrentPage.Parameters.param}
</apex:page>

显示效果:

2.$Label:通过此变量可以获取custom labels中配置的自定义label,自定义label分成静止的内容以及动态的内容。

 <apex:page >
<apex:pageBlock >
此种方式为动态形式的label value显示:
<apex:outputText value="{!$Label.Show_Message_Dynamic}">
<apex:param value="1"></apex:param>
<apex:param value="2"></apex:param>
</apex:outputText>
</apex:pageBlock>
<apex:pageBlock >
此种方式为静态形式的label value显示:
<apex:outputText value="{!$Label.MEILAN_NOTE2}">
</apex:outputText>
</apex:pageBlock>
</apex:page>

其中Show_Message_Dynamic声明如下:

运行效果:

3.$ObjectType:类似apex中的SObjectType类的功能:通过此对象可以获取类或者字段的meta data,比如label名称等.项目中有的时候需要获取字段的label信息,通过此种方式获取的label信息可以直接实现国际化功能,而不用自己创建多套内容来维护国际化;

 <apex:page >
<apex:pageBlock >
Account的Label : <apex:outputText value="{!$ObjectType.Account.Label}" style="color:red;"></apex:outputText><br/>
Account表中的字段为Name的Label : <apex:outputText value="{!$ObjectType.Account.Fields.Name.Label}" style="color:red;"></apex:outputText><br/>
</apex:pageBlock>
</apex:page>

运行效果:

4.$Page :类似apex中的pageReference功能,绑定在<a>标签等上面实现链接跳转功能。

 <apex:page >
<a href="{!$Page.ObjectTypeVariableUsage}" target="_blank">跳转到其他页面</a>
</apex:page>

5.$Resource:此变量经常用到,我们有时候需要引入某个css文件或者js文件,或者显示某些文件图片等,需要先上传到static resources中,然后通过$Resource.file_name即可引入。

 <apex:page >
<apex:stylesheet value="{!$Resource.test}"></apex:stylesheet>
<span class="largerSize">字体比较</span><br/>
<span >字体比较</span>
</apex:page>

运行效果:

6.$User:获取当前登陆的用户信息:

 <apex:page >
<apex:pageBlock >
<apex:outputText value="当前登陆用户的用户名称为:{!$User.Username}"></apex:outputText><br/>
邮箱地址为:{!$User.Email}
</apex:pageBlock>
</apex:page>

运行效果:

总结:VF中可以使用变量和函数,通过使用变量和函数有的时候可以使复杂的处理简单化,篇中只介绍一些简单常用的变量,其他变量使用可以参考官方提供的page的PDF。下一篇主要介绍函数在VF中的使用。

salesforce 零基础学习(六十五)VF页面应善于使用变量和函数(一)常用变量的使用的更多相关文章

  1. salesforce 零基础学习(十六)Validation Rules & Date/time

    上一篇介绍的内容为Formula,其中的Date/time部分未指出,此篇主要介绍Date/time部分以及Validation rules. 本篇参考PDF: Date/time:https://r ...

  2. salesforce 零基础学习(十九)Permission sets 讲解及设置

    Permission sets以及Profile是常见的设置访问权限的方式. Profile规则为'who see what'.通过Profile可以将一类的用户设置相同的访问权限.对于有着相同Pro ...

  3. salesforce零基础学习(九十五)lightning out

    随着salesforce对lightning的推进,越来越多的项目基于lightning开发,导致很多小伙伴可能都并不了解classic或者认为不需要用到classic直接就开始了lightning的 ...

  4. salesforce 零基础学习(十八)WorkFlow介绍及用法

    说起workflow大家肯定都不陌生,这里简单介绍一下salesforce中什么情况下使用workflow. 当你分配许多任务,定期发送电子邮件,记录修改时,可以通过自动配置workflow来完成以上 ...

  5. salesforce零基础学习(一百一十)list button实现的一些有趣事情

    本篇参考: salesforce零基础学习(九十五)lightning out https://developer.salesforce.com/docs/component-library/docu ...

  6. salesforce 零基础学习(五十二)Trigger使用篇(二)

    第十七篇的Trigger用法为通过Handler方式实现Trigger的封装,此种好处是一个Handler对应一个sObject,使本该在Trigger中写的代码分到Handler中,代码更加清晰. ...

  7. salesforce 零基础学习(六十八)http callout test class写法

    此篇可以参考: https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_classes_restfu ...

  8. salesforce零基础学习(一百零五)Change Data Capture

    本篇参考: https://developer.salesforce.com/docs/atlas.en-us.232.0.api_streaming.meta/api_streaming/using ...

  9. salesforce零基础学习(八十)使用autoComplete 输入内容自动联想结果以及去重实现

    项目中,我们有时候会需要实现自动联想功能,比如我们想输入用户或者联系人名称,去联想出系统中有的相关的用户和联系人,当点击以后获取相关的邮箱或者其他信息等等.这种情况下可以使用jquery ui中的au ...

  10. salesforce零基础学习(八十九)使用 input type=file 以及RemoteAction方式上传附件

    在classic环境中,salesforce提供了<apex:inputFile>标签用来实现附件的上传以及内容获取.salesforce 零基础学习(二十四)解析csv格式内容中有类似的 ...

随机推荐

  1. php中使用mysql_fetch_array输出数组至页面中展示

    用的是CI框架,很好的MVC结构 在Model层 public function showProteinCategory(){ $sql = "SELECT DISTINCT protein ...

  2. c++几个新特性

    template 模板 1.出于通用性考虑,程序库中几乎所有东西都被设计为template形式,不支持template几乎不能使用标准程序库. 2.所谓template,是针对"一个或多个尚 ...

  3. photoshop如何快速切图

    作为业余爱好,之前都是用比较笨的方法切图,甚至用裁剪工具一张一张的切. 后来知道用切片工具,但也仅限于互不重叠的图片. 在工作中实际使用时才发现实在是太慢了,慢到上级自己说你不用做了,我来吧. 其实, ...

  4. 分布式事务 & 两阶段提交 & 三阶段提交

    可以参考这篇文章: http://blog.csdn.net/whycold/article/details/47702133 两阶段提交保证了分布式事务的原子性,这些子事务要么都做,要么都不做. 而 ...

  5. Linux内核探索之路——关于方法

    转载自:http://blog.chinaunix.net/uid-20608849-id-3014502.html   Linux内核实践之路 -给那些想从Linux内核找点乐趣的人 一个不能回避的 ...

  6. javascript中的元素包含判断

    在实际开发中,很多时候需要知道某个节点是不是另一个节点的后代.很多浏览器提供了contains方法,如: console.log(document.documentElement.contains(d ...

  7. AngularJS最理想开发工具WebStorm

    http://blog.fens.me/angularjs-webstorm-ide/ Angularjs插件下载地址:http://plugins.jetbrains.com/plugin/6971 ...

  8. html 5 本地数据库(Web Sql Database)核心方法openDatabase、transaction、executeSql 详解

    Web SQL数据库API实际上不是HTML5规范的组成部分,而是单独的规范.它通过一套API来操纵客户端的数据库.Safari.Chrome. Firefox.Opera等主流浏览器都已经支持Web ...

  9. 前端程序员应该知道的 15 个 jQuery 小技巧

    下面这些简单的小技巧能够帮助你玩转jQuery. 返回顶部按钮 预加载图像 检查图像是否加载 自动修复破坏的图像 悬停切换类 禁用输入字段 停止加载链接 切换淡入/幻灯片 简单的手风琴 让两个div高 ...

  10. --@angularJS--路由插件UI-Router

    UI-Router是angular路由插件,上一篇我们讲到了angularJS自带路由,可惜在路径嵌套上表现的有所欠缺,而angular-UI-Router插件正好弥补了这一点. [示例]: □.UI ...