Salesforce 开发整理(十一) 自定义放大镜查找效果
有时候在自定义的visualforce页面上,需要实现系统标准的查找样式,当不能使用标准的style的时候,我们只能选择自定义实现,下面分享一个demo,预览效果如下:

实现代码,Visualforce页面
<!-- 自定义放大镜查找效果 -->
<apex:page showHeader="false" controller="SelectSystem" standardStylesheets="false" sidebar="false" title="产品清单">
<html>
<head>
<link rel="stylesheet" href="{!URLFOR($Resource.StaticResource,'css/animate.css')}"/>
<link rel="stylesheet" href="{!URLFOR($Resource.StaticResource,'css/bootstrap.min.css')}"/>
<link rel="stylesheet" href="{!URLFOR($Resource.StaticResource,'css/style.css')}"/>
</head>
<apex:form id="form_Id">
<apex:actionFunction action="{!getProductWithId}" name="getProductWithId" reRender="form_Id">
<apex:param name="myParam" value=""/>
</apex:actionFunction>
<body>
<table class="footable table table-stripped toggle-arrow-tiny" data-page-size="10">
<thead>
<tr>
<th data-hide="phone">产品</th>
<th data-hide="phone">描述</th>
<th data-hide="phone">型号</th>
<th data-hide="phone">品牌</th>
<th data-hide="phone">单位</th>
</tr>
</thead>
<tbody>
<apex:repeat value="{!CustomAddProduct}" var="p" >
<tr>
<td>
<apex:inputField id="pro" value="{!p.getProduct__c}" styleClass="lookupInput" onchange="f3(this);"/>
</td>
<td>{!p.Description__c}</td>
<td>{!p.Model__c}</td>
<td>{!p.Brand__c}</td>
<td>{!p.Unit__c}</td>
</tr>
</apex:repeat>
</tbody>
</table>
</body>
<script type="text/javascript">
function f3(obj){
var objVa = document.getElementById(obj.id+'_lkid').value;
console.log('get到的产品id是:' + objVa);
getProductWithId(objVa);
}
</script>
<style type="text/css">
.lookupInput
{
display: inline;
vertical-align: middle;
white-space: nowrap;
}
.lookupInput img
{
background-repeat: no-repeat;
margin-right: .25em;
vertical-align: middle;
}
.lookupInput .disabled{
background-color: #ccc;
}
.lookupInput .emptyDependentLookup{
font-style: italic;
}
.lookupInput input[readonly]{
background-color: #e6e6e6;
border: 2px solid #e6e6e6;
color: #333;
cursor: default;
}
.lookupInput a.readOnly{
float: right;
}
.lookupInput span.readOnly
{
display: block;
white-space: normal;
}
.lookupInput span.totalSummary{
font-weight: bold;
}
.inlineEditRequiredDiv .lookupInput img,.inlineEditDiv .lookupInput img{
vertical-align: middle;
}
.quickCreateModule .lookupInput input {
max-width: 155px
}
.lookupIcon
{
background-image: url({!URLFOR($Resource.lookup,'lookup20.gif')});
background-position: 0 0;
width: 20px;
height: 20px;
background-position: top left
}
.lookupIconOn
{
background-image: url({!URLFOR($Resource.lookup,'lookup20.gif')});
background-position: 0 0;
width: 20px;
height: 20px;
background-position: top right
}
</style>
</apex:form>
</html>
</apex:page>
后台控制类
/********
*
* @Author:Ricardo
* @Time: 2018-01-26
* @Function: 自定义放大镜
*
*/
public class SelectSystem{
public Product__c CustomAddProduct{get;set;}//自定义添加产品
public void GetProductWithId(){
string ProductIdParam = Apexpages.currentPage().getParameters().get('myParam');
System.debug('输出get到的产品id:' + ProductIdParam);
if((ProductIdParam) != null || (ProductIdParam != '')){
String sql_new = 'select getProduct__c,Unit__c,Description__c,Brand__c,Model__c,id,Name from Product__c where id=\'' + ProductIdParam + '\' limit 1';
System.debug('输出查询语句:' + sql_new);
CustomAddProduct = Database.Query(sql_new);
CustomAddProduct.getProduct__c = ProductIdParam;
System.debug('查询结果:' + CustomAddProduct);
}
}
}
附赠使用的css文件
链接: https://pan.baidu.com/s/1FbR8vSD6iER4ShbuYi_7qQ 密码: 29a3
Salesforce 开发整理(十一) 自定义放大镜查找效果的更多相关文章
- Salesforce 开发整理(八)PDF打印相关
一:基础设置 Salesforce中的PDF页面本质上还是Visualforce[简称VF]页面,所以只需要给VF页面加上一个属性[renderAs="pdf"] 即可生成一个PD ...
- Salesforce 开发整理(五)代码开发最佳实践
在Salesforce项目实施过程中,对项目代码的维护可以说占据极大的精力,无论是因为项目的迭代,还是需求的变更,甚至是项目组成员的变动,都不可避免的需要维护之前的老代码,而事实上,几乎没有任何一个项 ...
- Salesforce 开发整理(九) 开发中使用的一些小技巧汇总[持续更新]
1.查询一个对象下所有字段 当需要查询一个对象所有字段进行复制或其他操作,可以使用一段拼接的语句来查询 String query = 'select '; for(String fieldApi : ...
- Salesforce 开发整理(二)报表开发学习
Salesforce提供了强大的报表功能,支持表格.摘要.矩阵以及结合共四种形式,本文探讨在站在开发的角度要如何理解报表. 一:查询报表基本信息报表在Sales force中是Report对象,基本的 ...
- Salesforce 开发整理(一)测试类最佳实践
在Sales force开发中完善测试类是开发者必经的一个环节,代码的部署需要保证至少75%的覆盖率,那么该如何写好测试类呢. 测试类定义格式如下: @isTest private class MyT ...
- Salesforce 开发整理(十)项目部署总结
项目部署顺序 全局值集 小组 自定义字段-对象-设置(SF1 紧凑布局要和记录类型在这里要一起部署) 邮件模板-静态资源 角色 工作流-流定义(包含进程生成器) 批准过程 开发部署<Apex类, ...
- Salesforce 开发整理(七)配置审批流
salesforce提供了比较强大的可配置审批流功能,在系统中翻译为“批准过程”.所以需要配置审批时,选择创建 ——> 工作流和批准 ——> 批准过程,然后选择管理批准过程,选择需要配置 ...
- Salesforce 开发整理(六) Visualforce分页
分页的实现总体上分真分页和假分页. 所谓真分页指页面上列出来的数据就是实际查询的数据,假分页则是无论页面上一次显示多少条记录,实际上后台已经加载了所有的记录,分页只是为了展示给用户查看.今天分享一个V ...
- Salesforce 开发整理(四)记录锁定
如果一个对象的记录在满足某个条件的情况下,希望能对其进行锁定,即普通用户没有权限对其进行编辑操作,记录页面显示如下图 一般会在提交审批,或者项目进行到某个阶段的情况下,由后台进行判断要不要锁定记录,或 ...
随机推荐
- 发布TS类型文件到npm
最近发布了@types/node-observer包到npm,这里记录下发布过程 TS类型文件的包名通常以@types开头,使用npm publish发布以@types开头的包时需要使用付费账号. ...
- Ubuntu关机重启后 NVIDIA-SMI 命令不能使用
问题: 电脑安装好Ubuntu系统后,后续安装了显卡驱动.CUDA.cuDNN等软件,后续一直没有关机.中间系统曾经有过升级,这也是问题所在.系统升级导致内核改变,并可能导致它与显卡驱动不再匹配,所以 ...
- 【java提高】---patchca生成验证码
Java使用patchca生成验证码 Patchca是Piotr Piastucki写的一个java验证码开源库,打包成jar文件发布,patchca使用简单但功能强大. 本例实现了自定 ...
- synchronized和volatile使用
synchronized和volatile volatile :保证内存可见性,但是不保证原子性: synchronized:同步锁,既能保证内存可见性,又能保证原子性: synchronized实现 ...
- vue项目打包经验
[Element自带的图标不显示]打开 build/utils.js 文件,在如下位置添加 publicPath: '../../' [ElementUI的el-main组件默认会有padding=2 ...
- Webpack相关原理浅析
基本打包机制 本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler).当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(de ...
- 13.生产环境中的 redis 是怎么部署的?
作者:中华石杉 面试题 生产环境中的 redis 是怎么部署的? 面试官心理分析 看看你了解不了解你们公司的 redis 生产集群的部署架构,如果你不了解,那么确实你就很失职了,你的 redis 是主 ...
- 12.redis 的并发竞争问题是什么?如何解决这个问题?了解 redis 事务的 CAS 方案吗?
作者:中华石杉 面试题 redis 的并发竞争问题是什么?如何解决这个问题?了解 redis 事务的 CAS 方案吗? 面试官心理分析 这个也是线上非常常见的一个问题,就是多客户端同时并发写一个 ke ...
- Unity编辑器汉化(中文语言包)
前言 Unity官方已提供编辑器的中文语言包 在官方的帮助文档中选择中文语言 下载方法 方法一:通过Unity Hub 下载 Windows: https://public-cdn.cloud.uni ...
- git的使用(二)
GITHUB 简介 github可以是全世界最大的同性交友网站,其实就是和百度云一个性质. gitHub于2008年4月10日正式上线,除了git代码仓库托管及基本的 Web管理界面以外,还提供了订阅 ...