salesforce保存记录后,根据条件弹出对话框提示

首先创建一个Visualforce页面并添加到页面布局。

Visualforce页面

  1. 条件语句
    在Visualforce页面的条件语句中,您需要使用正确的Visualforce表达式语法来插入JavaScript代码。此外,Visualforce的表达式语法不支持JavaScript直接调用,因此需要将条件逻辑转换为字符串比较。

  2. 脚本位置
    将脚本移到Visualforce页面的顶部,以确保在页面加载时能够正确执行。

Visualforce页面

<apex:page standardController="Opportunity" action="{!markread}" extensions="OpportunityExtension"><apex:form><script>window.onload = function() {var contractField = '{!Opportunity.Contract__c}';var messageShown = '{!Opportunity.MessageShown__c}';if (contractField !== '' && messageShown === 'false') {alert("Contract was successfully created");}};</script></apex:form>
</apex:page>

Apex控制器

确保OpportunityExtension类和markread方法正确更新 MessageShown__c 字段。

public with sharing class OpportunityExtension {private final Opportunity opp;public OpportunityExtension(ApexPages.StandardController controller) {this.opp = (Opportunity)controller.getRecord();}public PageReference markread() {if (opp.Contract__c != null && !opp.MessageShown__c) {opp.MessageShown__c = true;update opp;}return null;}
}

解释

  1. 页面脚本

    • window.onload 确保脚本在页面加载完成后运行。
    • 将字段值转化为JavaScript字符串来进行比较。
    • 只有当 Contract__c 有值且 MessageShown__c 为false时,才会显示警告消息。
  2. Apex控制器

    • markread方法中,先检查条件,然后再更新 MessageShown__c 字段。
    • 确保条件和更新逻辑正确执行。

步骤

  1. 将Visualforce页面代码和Apex控制器代码复制到Salesforce开发者控制台或您的代码编辑器中。
  2. 保存更改并刷新您的Opportunity页面以测试功能。

Contract__c 字段有值且 MessageShown__c 为false时,页面加载时会显示警告消息,然后将 MessageShown__c 更新为true。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/26715.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Redis面试题(个人总结)

1、Redis特点 1、Redis是一个高性能且基于内存的数据库&#xff0c;所有的数据形式都是以键值对的方式来存储的 2、Redis支持丰富的数据类型&#xff0c;例如string,list,set,sorted set,hash&#xff0c;这些类型指的是键值对中的值的类型 3、Redis支持持久化 4、Redis单线程…

MQTT通讯协议接入

1.MQTT协议概述 MQTT是一种基于发布/订阅模式的轻量级消息传输协议&#xff0c;常用于低带宽、不可靠网络环境下传输消息&#xff0c;适用于物联网设备之间的通信。 1.1 MQTT协议的组件 客户端&#xff08;Client&#xff09;&#xff1a;连接到MQTT代理服务器的设备&#xff…

触摸芯片在物联网和人工智能上的应用

在科技更新换代频繁的时代&#xff0c;触摸芯片作为一种重要的人机交互技术&#xff0c;已经在逐渐融入我们的生活。为我们带来了更加便捷、直观的电子产品操作体验&#xff0c;让人与机器之间的沟通变得更加自然流畅。今天我们就来说一说触摸芯片。 触摸芯片的核心是电容感应…

dijkstra 算法为什么高效?

Dijkstra算法的高效性主要体现在其解决有权图中最短路径问题时所采用的方法和策略上。以下是对Dijkstra算法高效性的详细解释&#xff1a; 贪心策略&#xff1a; Dijkstra算法基于贪心原理&#xff0c;在每一步中总是选择具有最小暂定距离的节点。这种策略保证了算法首先探索一…

计算机组成原理(六)

0x12345678和12345678H都是指同一个十六进制,也就是12345678&#xff0c;不过是不同的编程语言的写法而已 具体来说&#xff0c;如果有 n 根地址线&#xff0c;计算机可以寻址的内存空间大小是 2^n 字节。 24根地址线&#xff1a; 如果一个系统有24根地址线&#xff0c;意味着它…

Codeforces Round 952 (Div. 4)

题解写到博客园了&#xff0c;懒得复制过来了了&#xff0c;放个链接 https://www.cnblogs.com/yxcblogs/p/18243276 推广一下自己记录的算法编程竞赛模板仓库 GitHub - yxc-s/programming-template: This repository contains C programming templates optimized for competi…

汇编程序设计之 位操作指令、顺序程序设计

文章目录 位操作类指令逻辑运算指令NOTORANDXORTEST 移位指令逻辑移位算数移位循环移位指令 处理机控制类指令顺序结构程序设计概念例子 位操作类指令 逻辑运算指令 NOT OR 对于每一个位&#xff0c;有1即为1 AND 同时为1才是1 XOR 不相同才为1 TEST 和and 一样的功能&…

postman接口测试工具详解

Postman是一款非常流行的API开发和测试工具&#xff0c;它不仅适用于测试人员&#xff0c;也广泛被开发者使用。Postman提供了全面的功能&#xff0c;能够帮助用户构建、测试、修改和监控API。以下是关于Postman接口测试工具的一些关键功能和使用步骤的详解&#xff1a; 功能概…

RK3568技术笔记六 新建 Ubuntu Linux 虚拟机

VMware 安装完成后&#xff0c;启动 VMware 软件。启动后在 VMware 主界面点击“创建新的虚拟机”。如下图所示&#xff1a; 开始对新建的虚拟机进行设置。选择“自定义”&#xff0c;然后点击“下一步”。如下图所示&#xff1a; 使用默认配置&#xff0c;单击“下一步”。如下…

PyTorch -- 最常见激活函数的选择

首先&#xff0c;简单复习下什么是梯度&#xff1a;梯度是偏微分的集合 举例说明&#xff1a;对于 z y 2 − x 2 : ∇ z ( ∂ z ∂ x , ∂ z ∂ y ) &#xff08; 2 x , 2 y &#xff09; z y^2-x^2: \nabla z (\frac{\partial z}{\partial x}, \frac{\partial z}{\partia…

夏日炎炎 水域守护:北斗守护安全防线——为生命撑起智能保护伞

随着夏季的来临&#xff0c;炎热的天气让许多人纷纷寻求水的清凉。清凉的河流与广阔的海域成为了不少人消暑降温的向往之地。然而&#xff0c;私自下河、下海的行为却暗藏着巨大的安全隐患&#xff0c;每年夏季溺水事故频发&#xff0c;给无数家庭带来不可挽回的悲痛。为有效遏…

规模弹性: 管理谷歌的TPUv4机器学习超级计算机

摘要 TPUv4&#xff08;张量处理单元&#xff09;是谷歌用于机器学习训练的第三代加速器&#xff0c;采用定制的三维环形互连&#xff0c;部署为 4096 节点的超级计算机。在本文中&#xff0c;我们将介绍设计和运行软件基础设施的经验&#xff0c;这些软件基础设施使 TPUv4 超…

Git进阶使用(图文详解)

文章目录 Git概述Git基础指令Git进阶使用一、Git分支1.主干分支2.其他分支2.1创建分支2.2查看分支1. 查看本地分支2. 查看远程分支3. 查看本地和远程分支4. 显示分支的详细信息5. 查看已合并和未合并的分支 2.3切换分支1. 切换到已有的本地分支2. 创建并切换到新分支3. 切换到远…

【SkiaSharp绘图03】SKPaint详解(一)BlendMode混合模式、ColorFilter颜色滤镜

文章目录 SKPaintSKPaint属性BlendMode获取或设置混合模式SKBlendMode 枚举成员效果预览 Color/ColorF获取或设置前景色ColorFilter 颜色滤镜CreateBlendMode 混合模式CreateColorMatrix 颜色转换CreateCompose 组合滤镜CreateHighContrast 高对比度滤镜CreateLighting 照明滤镜…

flask实战之模板实现公共导航

基础实现 目标 在Flask中&#xff0c;使用模板继承和块&#xff08;blocks&#xff09;可以方便地提取公共导航菜单&#xff0c;使得您可以在多个页面上重用相同的导航结构。以下是一个基本示例&#xff0c;展示如何创建一个包含公共导航菜单的模板&#xff1a; 创建基础模板…

译译交友项目介绍

一、 项目背景 随着社会的进步&#xff0c;英语作为一种国际语言&#xff0c;很多人都在学习英语&#xff0c;然而现在很多人都会因为学习英语而烦恼&#xff0c;有时还会因为是一个人学习而感到枯燥。面对情绪的低落&#xff0c;往往会使学习更困难。因此&#xff0c;我打造了…

游戏心理学Day13

游戏成瘾 成瘾的概念来自于药物依赖&#xff0c;表现为为了感受药物带来的精神效应&#xff0c;或是为了避免由于断药所引起的不适和强迫性&#xff0c;连续定期使用该药的 行为现在成瘾除了药物成瘾外&#xff0c;还包括行为成瘾。成瘾的核心特征是不知道成瘾的概念来自于药…

MySQL系列-语法说明以及基本操作(二)

1、MySQL数据表的约束 1.1、MySQL主键 “主键&#xff08;PRIMARY KEY&#xff09;”的完整称呼是“主键约束”。 MySQL 主键约束是一个列或者列的组合&#xff0c;其值能唯一地标识表中的每一行。这样的一列或多列称为表的主键&#xff0c;通过它可以强制表的实体完整性。 …

编程基础知识读后感怎么写:深入剖析与全面解读

编程基础知识读后感怎么写&#xff1a;深入剖析与全面解读 在阅读完编程基础知识相关书籍或资料后&#xff0c;撰写一篇高质量的读后感是巩固所学、深化理解的重要方式。然而&#xff0c;如何写出一篇既有深度又有广度的读后感&#xff0c;却是一个让许多人感到困惑的问题。本…

微信小程序开发教程

尚硅谷微信小程序开发教程&#xff0c;2024最新版微信小程序项目实战&#xff01; 一、小程序基础 1. 初始小程序 微信小程序是一种运行在微信内部的 轻量级 应用程序。 使用小程序时 不需要下载&#xff0c;用户 扫一扫 或 搜一下 即可打开应用&#xff0c;它也体现了 “用…