«

jquery getJSON ($.getJSON) 事件用法与分析

时间:2024-1-28 13:38     作者:韩俊     分类: Javascript


jQuery中常用getJSON来通过 HTTP GET 请求载入 JSON 数据,将其转换为JSON对象,如果成功,则执行回调函数。原型如下:

jQuery.getJSON( url, [data], [callback] )  跨域加载JSON数据。

url: 必需。规定将请求发送的哪个 URL
data : 可选。规定连同请求发送到服务器的数据
callback: (可选) 载入成功时的回调函数

该函数是简写的 Ajax 函数,等价于:

$.ajax({
  url: url,
  data: data,
  success: callback,
  dataType: json
});

注意:该函数以后的代码将在这个回调函数执行前执行。
 
下面通过一个简单示例说明:

(1)定义的服务器脚本文件(返回JSON数据)http://www.maopiaopiao.com/test.php 源代码如下:

<?php
$jarr='';
if($_GET['userid']==23&&$_GET['username']=='phpernote'){
    $arr=array("name"=>"php程序员教程网", "url"=>'http://www.maopiaopiao.com/');
    $jarr=json_encode($arr);
}
echo $jarr;

注意两点:

第一:在返回客户端之前,先用PHP函数json_encode将要返回的数据进行编码。

第二:返回到客户端用的是echo,而不是return。
 
下面是核心的客户端代码:

<script language="javascript" type="text/javascript" src="http://www.maopiaopiao.com/js/jquery.js"></script> 
<script language="javascript" type="text/javascript"> 
function getJSON(){
    $.getJSON("http://www.maopiaopiao.com/test.php", {userid:'23',username:'phpernote'}, function(response){
    alert(response.url);
});
}
</script>

<input type="button" name="btn" id="btn" value="test" onClick="javascript:getJSON();"/>

由于在PHP中是用JSON编码返回值,所以此处必须用getJSON去调用PHP文件,从而获取数据。同时可以注意到,经由getJSON得到的数据已经变成了一个对象数组,可以直接使用 response.name,response.url 获取返回值。

标签: javascript

热门推荐