基于jquery的$.getJSON 跨域ajax请求

  我后端是用php教程的,以下代码主要实现的一个功能就是提供一个预约登记的接口,需要传入的数据分别有:用户姓名、联系电话和地址

view sourceprint?......

 代码如下 复制代码

view sourceprint?/*预约登记 执行 接口*/

case "yuyue_interface": 

    $name = trim($_GET['name']); 

    $phone = trim($_GET['phone']); 

    $addr = trim($_GET['addr']); 

    $dt = date("Y-m-d H:i:s"); 

    $cb = $_GET['callback']; 

    if($name == "" || $name == NULL){ 

        echo $cb."({code:".json_encode(1)."})"; 

    }elseif($phone == "" || $phone == NULL){ 

        echo $cb."({code:".json_encode(2)."})"; 

    }elseif($addr == "" || $addr == NULL){ 

        echo $cb."({code:".json_encode(3)."})"; 

    }else{ 

        $db->execute("insert into tb_yuyue (realname,telphone,danwei,dt,ischeck) values ('$name','$phone','$addr','$dt',0)"); 

        echo $cb."({code:".json_encode(0)."})"; 

    } 

    exit; 

break;

view sourceprint?......

  接着就是前端的处理了

 代码如下 复制代码

view sourceprint?$(document).ready(function(){ 

    //以下3个为预约登记需要的参数 

    var name = "name";      //varchar类型,长度最多为8位(4个汉字) 

    var phone = "phone";    //varchar类型,长度为11位 

    var addr = "addr";      //varchar类型,长度最多为500位(250个汉字) 

    $.getJSON("http://请求网站地址/data.php?ac=yuyue_interface&name="+name+"&phone="+phone+"&addr="+addr+"&callback=?", function(data){ 

        if(data.code==1){ 

            //自定义代码 

            alert("姓名不能为空"); 

        }else if(data.code==2){ 

            //自定义代码 

            alert("手机不能为空"); 

        }else if(data.code==3){ 

            //自定义代码 

            alert("所在单位不能为空"); 

        }else{ 

            //自定义代码 

            alert("预约成功"); 

        } 

    }); 

});

  需要注意的是,在后端php代码里,必须把传递进来的“ &callback=? ”也输出来,如:

 代码如下 复制代码

view sourceprint?$cb = $_GET['callback']; 

echo $cb."({code:".json_encode(4)."})";

  以上就是一个简单的$.getJSON试验,通过这个试验

时间: 2024-12-30 06:55:38

基于jquery的$.getJSON 跨域ajax请求的相关文章

jQuery的$.getJSON跨域Ajax方法介绍

客户端: 使用$.getJSON()在传输第一个参数,也就是url时,如果是跨域请求一定要有一个参数的值为"?",如:  代码如下 复制代码 $.getJSON(      "http://202.196.35.41/json.php?callback=?",     function(data){          alert(data);      }  }; jQuery在发送请求时会将这个"?"替换为一个唯一的字符串,如下图 并且声明一个

使用$.getJSON实现跨域ajax请求示例代码_AJAX相关

jQuery中常用getJSON来调用并获取远程的JSON字符串,将其转换为JSON对象,如果成功,则执行回调函数.原型如下: jQuery.getJSON( url, [data], [callback] ) 跨域加载JSON数据. url: 发送请求的地址 data : (可选) 待发送key/value参数 callback: (可选) 载入成功时的回调函数 主要用于客户端获取服务器JSON数据.简单示例: 服务器脚本,返回JSON数据: 复制代码 代码如下: // $.getJSON.p

使用$.getJSON实现跨域ajax请求示例代码

jQuery中常用getJSON来调用并获取远程的JSON字符串,将其转换为JSON对象,如果成功,则执行回调函数.原型如下: jQuery.getJSON( url, [data], [callback] ) 跨域加载JSON数据. url: 发送请求的地址 data : (可选) 待发送key/value参数 callback: (可选) 载入成功时的回调函数 主要用于客户端获取服务器JSON数据.简单示例: 服务器脚本,返回JSON数据: 复制代码 代码如下: // $.getJSON.p

jQuery中getJSON跨域原理详解

jQuery中getJSON跨域原理详解  前几天我再开发一个叫 河蟹工具条 的时候,其中有个功能就是获取本页面的短网址. 这个想法是好的,可是在我付诸于行动的时候,发现这个需要跨域. 起初我的想法就是,跨域的最简单的方法就是增加一个script标签,因为script标签是允许跨域的. 但是问题又来了,对方的API返回的是个json对象,用script标签只能执行,却不能获取到里面的东西,也就是说返回的东西是不可控的. 随后我就想到了jQuery中的getJSON的方法,学习了一下,没想到里面的

通过jquery的$.getJSON做一个跨域ajax请求试验_jquery

(主要是留个备用,怕以后再用到自己却忘记了,所以没有太多的解释,实在看不明白的话,照着我的代码,你也试一个吧) 我后端是用php的,以下代码主要实现的一个功能就是提供一个预约登记的接口,需要传入的数据分别有:用户姓名.联系电话和地址 /*预约登记 执行 接口*/ 复制代码 代码如下: /*预约登记 执行 接口*/ case "yuyue_interface": $name = trim($_GET['name']); $phone = trim($_GET['phone']); $ad

基于Jquery插件实现跨域异步上传文件功能_jquery

先说明白 这个跨域异步上传功能我们借助了Jquery.form插件,它在异步表单方面很有成效,而跨域我们会在HTTP响应头上添加access-control-allow-method,当然这个头标记只有IE10,火狐和谷歌上支持,对于IE10以下的浏览器来说,我们就不能用这种方式了,我们需要换个思路去干这事,让服务端去重写向我们的客户端,由客户端(与文件上传页面在同域下)来返回相关数据即可. 再做事 1 Jquery.form的使用 <form method="post" act

jquery的ajax和getJson跨域获取json数据的实现方法

 本篇文章主要是对jquery的ajax和getJson跨域获取json数据的实现方法进行了介绍,需要的朋友可以过来参考下,希望对大家有所帮助 很多开发人员在使用jquery在前端和服务器端进行数据交互,所以很容易会认为在前端利用jquery就可以读取任何站点的数据了.近日在进行开 发时,因为要和第三方公司的一个项目进行数据的共享,因为考虑多不占用服务器的资源,遂决定直接在html进行数据的读取,不走服务器端进行中转了.然后 正好就遇到了浏览器端跨域访问的问题.   跨域的安全限制都是指浏览器端

jquery的ajax和getJson跨域获取json数据的实现方法_jquery

很多开发人员在使用jquery在前端和服务器端进行数据交互,所以很容易会认为在前端利用jquery就可以读取任何站点的数据了.近日在进行开 发时,因为要和第三方公司的一个项目进行数据的共享,因为考虑多不占用服务器的资源,遂决定直接在html进行数据的读取,不走服务器端进行中转了.然后 正好就遇到了浏览器端跨域访问的问题. 跨域的安全限制都是指浏览器端来说的,服务器端不存在跨域安全限制的问题. 目前浏览器端跨域访问常用的两种方法有两种: 1.通过jQuery的ajax进行跨域,这其实是采用的jso

http页面ajax https-jquery.getJSON()跨域请求

问题描述 jquery.getJSON()跨域请求 实现在http页面 同服务下的https请求,因为端口不一致,产生跨域,所以用jquery.getJSON() 功能已经实现,在chroome和Firefox下功能均是正常,但是在ie下就是不行,希望有做过相关功能的高手解答.有什么其他的解决方案可以一起讨论. 另外,我将https请求换成http,在ie下getJSON是可以正常执行的,所以这个感觉涉及的https相关的.第一次搞https,不是很清楚 解决方案 function online