标签:Ajax

在优雅的jquery框架下,很快地实现了将我馆的和厦大馆的随书光盘整合到innovative系统的opac中,接下来会加快电子期刊、电子图书及网络资源的整合。

效果页面:

随书光盘整合效果页面

Continue reading →

和厦大图书馆共通随书光盘有无,通过json来实现数据传递。

json样例(肖同学提供,严重感谢~):

({
   ”title”:”Title is here”,
   ”url”:”Url is here”
})

jquery处理样例:

$.getJSON(“http://url&callback=?”, {isbn:12345678900},function(data){
alert(“title:”+data.title);
alert(“url:”+data.url);
});

需要注意的是上面回调的参数用callback,而不是jsoncallback。

ajax应用中,最常碰到的问题便是:你从某一个编码(如utf-8)的页面上,向另一不同编码(如gb2312)的页面传递中文参数,从而出现乱码问题,最要命的是,这两边,你都无法做任何改变。

一种简单有效的解决办法是在ajax发出请求的时候,用escape()函数将参数进行编码。它返回一个包含了 charstring 内容的字符串值( Unicode 格式)。所有空格、标点、重音符号以及其他非 ASCII 字符都用 %xx 编码代替,其中 xx 等于表示该字符的十六进制数。例如,空格返回的是 “%20” 。字符值大于 255 的以 %uxxxx 格式存储。虽然有教程指出escape 方法不能够用来对统一资源标示码 (URI) 进行编码,而应该用encodeURI 和encodeURIComponent 方法来处理,但就我的使用情况来看,escape()方法有效得多。

另一种方法是引入一个第三方页面做中转,在该页面上进行编码处理。
Continue reading →

jQuery是一个更为好用的javascript框架,偶已经决定将其应用到实践中。对于跨域,jQuery可以通过getJSON()方法,以HTTP GET 请求的方式载入 JSON 数据,从而提供了较prototype更简便的解决方案。

在 jQuery 1.2 中,您可以通过使用JSONP(JSON with Padding,或者JSON with callbacks) 形式的回调函数来加载其他网域的JSON数据,如 “myurl?callback=?”。jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。(ps:此行以后的代码将在这个回调函数执行前执行)

jQuery.getJSON(url,[data],[callback])

参数

url (String) : 发送请求地址。

data (Map) : (可选) 待发送 Key/value 参数。

callback (Function) : (可选) 载入成功时回调函数。

示例

从 Flickr JSONP API 载入 4 张最新的关于猫的图片。

HTML 代码:

jQuery 代码:

$.getJSON(“http://api.flickr.com/services/feeds/photos_public.gne?tags=cat&tagmode=any&format=json&jsoncallback=?”,
function(data){
$.each(data.items, function(i,item){
$(““).attr(“src”, item.media.m).appendTo(“#images”);
if ( i == 3 ) return false;
});
});

——————————————————————————–

从 test.js 载入 JSON 数据并显示 JSON 数据中一个 name 字段数据。

jQuery 代码:

$.getJSON(“test.js”, function(json){
alert(“JSON Data: ” + json.users[3].name);
});

——————————————————————————–

从 test.js 载入 JSON 数据,附加参数,显示 JSON 数据中一个 name 字段数据。

jQuery 代码:

$.getJSON(“test.js”, { name: “John”, time: “2pm” }, function(json){
alert(“JSON Data: ” + json.users[3].name);
});

本文数据及样例来自:http://jquery-api-zh-cn.googlecode.com/svn/trunk/index.html

本文旨在提供可运行的例子,相关的知识点,参见以下链接:

源码运行之前,请先下载以下两个文件,并与domainA.html放在同一目录中:

源码:

Continue reading →

Continue reading →

Continue reading →

Continue reading →

Millennium,ajax,OPAC
Continue reading →

Continue reading →