一、同步调用的异常处理: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. Ubuntu 安装播放器

    安装 VLC sudo snap install vlc snap 下载慢的看这里https://www.cnblogs.com/Ahtelek/p/ubuntu-snap.html

  2. 动力节点—day06

    常用类 String String表示字符串类型,属于引用数据类型,不属于基本数据类型 在Java中随便使用双引号括起来的都是String对象,例如"abc"."def& ...

  3. CTFshow刷题记录

    整理的一些ctf题目 WEB题 ctfshow 年CTF 除夕 题目要求通过get传入year参数然后进行判断是否成立,成立就返回flag 这里可以用科学计数法表示通过get传入year=2.022e ...

  4. 【Android 4.4】内存文件系统(tmpfs)的创建与使用

    前言说明 某些情况下,需要缓存一些文件到磁盘中,我们可以借助 tmpfs 文件系统,来提升读写缓存文件的速度,并且也可以避免频繁读写缓存文件所带来的对 flash 的寿命影响. 使用方法 通过 mkd ...

  5. Grafana 系列文章(七):Grafana Explore 中的 Tracing

    ️URL: https://grafana.com/docs/grafana/latest/explore/trace-integration/ Description: Tracing in Exp ...

  6. 真正“搞”懂HTTP协议11之代理服务

    代理,其实全称应该叫做代理服务器,它是客户端与服务器之间得中间层,本质上来说代理就是一个服务器,在HTTP的链路中插入的一个中间环节,就是代理服务器啦.所谓的代理服务就是指:服务本身不生产内容,而是处 ...

  7. Python装饰器实例讲解(一)

    Python装饰器实例讲解(一) 多种角度讲述这个知识,这是个系列文章 但前后未必有一定的顺承关系 部分参考网络 本文以一个小案例引出装饰器的一些特点,不涉及理论,后面再谈 案例 写一个代码来求一个数 ...

  8. 浅谈Pytest中的marker

    浅谈Pytest中的marker 没有注册marker 我们写一个简单的测试 # test_demo.py import pytest @pytest.mark.login def test_demo ...

  9. C#网络爬虫开发

    1前言 爬虫一般都是用Python来写,生态丰富,动态语言开发速度快,调试也很方便 但是 我要说但是,动态语言也有其局限性,笔者作为老爬虫带师,几乎各种语言都搞过,现在这个任务并不复杂,用我最喜欢的C ...

  10. springcloud-alibaba

    1.spring cloud alibaba官网 https://spring.io/projects/spring-cloud-alibaba#overview 2.spring cloud ali ...