一、同步调用的异常处理:AJAX Toolkit  try catch...

<html>
<head>
<script src="/soap/ajax/44.0/connection.js" type="text/javascript"></script>
<script>
function setupPage() {
var output = document.getElementById("output");
var startTime = new Date().getTime()
try {
var queryResult = sforce.connection.query("Select Id, Name, Industry From
Account order by Industry limit 30");
layoutResults(queryResult, output, startTime);
} catch(error) {
queryFailed(error, output);
}
}
function queryFailed(error, out) {
out.innerHTML = "<font color=red>An error has occurred:</font> <p>" + error;
}
function layoutResults(queryResult, out, startTime) {
var timeTaken = new Date().getTime() - startTime;
if (queryResult.size > 0) {
var output = "";
var records = queryResult.getArray('records');
for (var i = 0; i < records.length; i++) {
var account = records[i];
output += account.Id + " " + account.Name + " [Industry - "
+ account.Industry + "]<BR>";
}
out.innerHTML = output + "<BR> query complexted in: " + timeTaken + " ms.";
} else {
out.innerHTML = "No records matched.";
}
}
</script>
</head>
<body onload="setupPage()">
div id="output"></div>
</body>
</html>   

二、VFPage AJAX Toolkit 中的数据迭代形式

  var result = sforce.connection.query("select id, name from account limit 10");
 var it = new sforce.QueryResultIterator(result);
while (it.hasNext()) {
var account = it.next();
sforce.debug.log(account.Name);
}

三、AJAX Toolkit 中字符串单引号的使用方式

Bob's B-B-Q

Apex 中使用方式:SELECT ID from ACCOUNT WHERE Name LIKE 'Bob\'s B-B-Q%'

Ajax:SELECT ID from ACCOUNT WHERE Name LIKE 'Bob\\'s B-B-Q%'

四、使用Base64二进制编码字符串:例子待补充

引用放到static中js 要用:<apex:includeScript value="{!URLFOR($Resource.majac_static, 'js/common.js')}"/>

<apex:page >
<html>
<head>
<script type="text/javascript"
src="//ajax.googleapis.com/ajax/libs/dojo/1.10.4/dojo/dojo.js"></script>
<script src="/soap/ajax/44.0/connection.js"></script>
<script>
function setup() {
var document_ta = document.getElementById("document-ta");
sforce.connection.query("select name, id from document limit 1",
{onSuccess : querySuccess,
onFailure : function(error, doc_ta) {
doc_ta.value = "Oops something went wrong: " + error;
},
source: document_ta});
}
function querySuccess(result, doc_ta) {
var records = result.getArray("records");
if (records.length == 1) {
dojo.io.bind({
url: "/servlet/servlet.FileDownload?file=" + records[0].Id,
load: loadDocument});
} else {
doc_ta.value = "no records found";
}
}
function loadDocument(type, data, event) {
var document_ta = document.getElementById("document-ta");
document_ta.value = data;
}
</script>
</head>
<body onload="setup()">
<textarea id="document-ta" cols="80" rows="20">
</textarea>
</body>
</html>
</apex:page >

  五、异步调用的超时参数:如果一个异步调用在适当的时间内没有完成,我们可以结束这个调用。要做到这一点,请在任何异步调用的回调部分中指定超时参数。

var account = new sforce.SObject("Account");
account.Name = "my new account";
sforce.connection.create([account], {onSuccess: print, onFailure: printerr, timeout: 100});

  六、Ajax 委托给Remote Site

新建一个一条 remoete site:

sforce.connection.remoteFunction({
url : "https://th-apex-http-callout.herokuapp.com",
onSuccess : function(response) {
alert("result" + response);
}
});

  

069_VisualForce Ajax 更多用法解读02的更多相关文章

  1. 关于Jquery Ajax的用法

    今天简单描述一下Jquery Ajax的用法,和我在使用过程中的一些看法,仅供自己娱乐和大家参考值之用! Jquery Ajax的重要性不言而喻,只从Jquery面世之后,终于解救了像我这种既做前台又 ...

  2. Ajax.ActionLink 用法

    Ajax.ActionLink 用法 Ajax 属性的ActionLink方法可以创建一个具有异步行为的锚标签. ActionLink方法的第一个参数指定了链接文本,第二个参数是要异步调用的操作的名称 ...

  3. MVC学习十二:Ajax.ActionLink用法

    Ajax.ActionLink用法 <!--使用Ajax.BeginForm必须引用的js文件--> <script type="text/javascript" ...

  4. 网络编程------socketserver模块以及socket模块的更多用法.

    socketserver模块 内置模块 (其实现原理为并发) socketserver这个模块主要是为了解决: TCP协议中,服务器不能同时连接多个客户端的问题 是处于socket抽象层和应用层之间的 ...

  5. js进阶ajax基本用法(创建对象,连接服务器,发送请求,获取服务器传过来的数据)

    js进阶ajax基本用法(创建对象,连接服务器,发送请求,获取服务器传过来的数据) 一.总结 1.ajax的浏览器的window对象的XMLHtmlRequest对象的两个重要方法:open(),se ...

  6. ajax和springmvc的请求响应原理——深入理解jQuery中$.get、$.post、$.getJSON和$.ajax的用法

    1,四大重要部分: 请求链接 post请求和get请求 请求参数形式 响应内容形式 2,从springmvc的controller角度,controller能接收到请求的前提 请求链接必须对应 pos ...

  7. 详细解读Jquery的$.get(),$.post(),$.ajax(),$.getJSON()用法

    一,$.get(url,[data],[callback]) 说明:url为请求地址,data为请求数据的列表,callback为请求成功后的回调函数,该函数接受两个参数,第一个为服务器返回的数据,第 ...

  8. Jquery的$.get(),$.post(),$.ajax(),$.getJSON()用法详细解读

    1.$.get $.get()方法使用GET方式来进行异步请求,它的语法结构为: $.get( url [, data] [, callback] ) 解释一下这个函数的各个参数: url:strin ...

  9. jQuery ajax - getJSON() 用法实例

    实例 从 test.js 载入 JSON 数据并显示 JSON 数据中一个 name 字段数据: $.getJSON("test.js", function(json){ aler ...

  10. js原生ajax与jquery的ajax的用法区别

    什么是ajax和原理? AJAX 是一种用于创建快速动态网页的技术. 通过XmlHttpRequest对象来向服务器发异步请求,从服务器获得数据 XMLHttpRequest对象的基本属性: onre ...

随机推荐

  1. SOFAJRaft依赖框架Disruptor浅析

    Disruptor是英国外汇交易公司LMAX开发的一个高性能队列,研发的初衷是解决内存队列的延迟问题.与Kafka.RabbitMQ用于服务间的消息队列不同,disruptor一般用于线程间消息的传递 ...

  2. 在函数中设置input的multiple属性以及input的点击事件时,设置失效

    1.在函数中先设置input文件可以多选,然后再设置input框的点击事件情况下,有时候这个多选设置会失效. 我们可以采用下面的方式去解决 <input ref="myInputRef ...

  3. ArrayList使用步骤-常用方法和遍历

    ArrayList使用步骤 查看类 java.util.ArrayList :该类需要 import导入使后使用. 表示一种指定的数据类型,叫做泛型. E ,取自Element(元素)的首字母.在出现 ...

  4. 芯片下载相关-CH32系列芯片下载方式汇总及教程

    一.CH32Fx系列芯片下载 1.ISP下载: 2.SWD下载 3.脱机烧录器下载: 二.CH32Vx系列芯片下载 1.ISP下载: 2.SWD下载: 3.脱机烧录器下载: 4.CH32V003下载注 ...

  5. TCP/IP RTT算法比较

    TCP重传机制Timeout特点: 设长了,重发就慢,效率和性能差: 设短了,重发就快,可能导致没有丢就重发,增加网络拥塞,导致更多的超时,更多的超时导致更多的重发. TCP协议引入2个概念: RTT ...

  6. 11月9日内容总结——单例模式的多种实现方式、pickle序列号模块和选课系统

    目录 一.单例模式实现的多种方式 方式一:使用类 方法二:使用metaclass方式(自定义元类) 方法三:自定义双下new 方法四:基于模块的单例模式 二.pickle序列化模块 优势: 缺陷: 方 ...

  7. 为什么 Linux 需要虚拟内存(转载)

    为什么 Linux 需要虚拟内存 原文链接: https://draveness.me/whys-the-design-os-virtual-memory/ 操作系统中的 CPU 和主内存(Main ...

  8. 通过URL地址将图片保存到本地

    今天一朋友问我如何通过URL地址将图片保存下来. 特地找了些资源,实现了一下代码: using System; using System.Drawing; using System.Drawing.I ...

  9. 0x05_My-OS显示字符串和任意参数

    先看看效果: 要解决两个问题,第一个如何显示字符串,printf?我之前已经说了所有的头文件都要自己写,printf是stdio里的可是我们没有stdio 我们要通过画像素点的方式显示字符串,有点像我 ...

  10. OpenLayers与百度高德等常见地图坐标系

    1. OpenLayers坐标系 OpenLayers中,创建一个Map,默认的显示(View)的投影坐标系是EPSG:3857,常见的另一个坐标系是 EPSG:4326 参考官方API文档:Open ...