`

JQuery 的跨域方法 可跨任意网站

阅读更多

因发现有不少博友发园内短信问及JS的跨域问题,我想很多程序员的脑海里面还认为JS是不能跨域的,其实这是一个错误的观点;有很多人在网上找其解决方法,教其用IFRAME去解决的文章很多,真有那么复杂吗?其实很简单的,如果你用JQUERY,一个GETJSON方法就搞定了,而且是一行代码搞定。

下面开始贴出方法。

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->        //跨域(可跨所有域名)
        $.getJSON("http://user.hnce.com.cn/getregion.aspx?id=0&jsoncallback=?",function(json){
         
         
//要求远程请求页面的数据格式为: ?(json_data)  
         //例如:
         //?([{"_name":"湖南省","_regionId":134},{"_name":"北京市","_regionId":143}])
         alert(json[0]._name);

         });
  

注意,getregion.aspx中,在输出JSON数据时,一定要用Request.QueryString["jsoncallback"],将获取的内容放到返回JSON数据的前面,假设实际获取的值为42342348,那么返回的值就是 42342348([{"_name":"湖南省","_regionId":134},{"_name":"北京市","_regionId":143}])

因为getJSON跨域的原理是把?随机变一个方法名,然后返回执行的,实现跨域响应的目的。

具体getJSON的使用说明,请参考JQUERY手册。

 

下面一个是跨域执行的真实例子:

代码
<!--<br/ /> <br/ /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br/ /> http://www.CodeHighlighter.com/<br/ /> <br/ /> --><script src="http://common.cnblogs.com/script/jquery.js" type="text/javascript"></script>
<script type="text/javascript">
//跨域(可跨所有域名)
    $.getJSON("http://e.hnce.com.cn/tools/ajax.aspx?jsoncallback=?", { id: 0, action: 'jobcategoryjson' }, function(json) {

        alert(json[
0].pid);
        alert(json[
0].items[0]._name);

    }); 
</script>


 

分享到:
评论

相关推荐

    用YQL和Jquery实现的跨域html页面截取

    在IT行业中,跨域问题一直是前端开发者面临的一大挑战。标题提到的"用YQL和Jquery实现的跨域html页面截取"是一个解决方案,...通过这种方式,开发者可以轻松地从任何公开可访问的网站获取数据,而不受同源策略的约束。

    jquery跨域调用webservice

    ### jQuery 跨域调用 WebService 的实现方法 在现代Web开发中,跨域问题是一个常见的挑战,尤其是在涉及不同源的服务交互时。本文将详细解释如何利用jQuery通过JSONP(JSON with Padding)的方式实现跨域调用...

    JQuery 的跨域方法推荐_可跨任何网站

    在不使用JQuery时,常见的跨域解决方案包括使用JSONP(JSON with Padding)、CORS(跨源资源共享)、代理服务器等方法。其中,JSONP是一种老旧但广泛支持的技术,它通过动态创建script标签的方式绕过同源限制,但只...

    jquery中ajax跨域方法实例分析

    并且,由于JSONP是通过`&lt;script&gt;`标签实现的,它只支持GET请求,并且在安全性方面比其他跨域方法要弱,因为它允许跨域执行任意的JavaScript代码。 最后,由于本文是OCR技术扫描文档产生的内容,部分字词可能存在...

    ajax跨域post(java例子)

    但通过特定的机制,比如CORS(Cross-Origin Resource Sharing,跨源资源共享),我们可以允许某些跨域请求。 ### 2. CORS机制 CORS是现代浏览器支持的一种安全机制,它通过在HTTP响应头中添加`Access-Control-Allow...

    轻松搞定jQuery+JSONP跨域请求的解决方案

    例如,JSONP允许执行任意的JavaScript代码,如果服务器端的输出没有经过严格验证和清洗,可能会导致跨站脚本攻击(XSS)。因此,在使用JSONP时,务必确保从可信的服务端获取数据,并对返回的数据进行适当的处理。

    ajax跨域问题!

    ### AJAX跨域问题详解 #### 一、引言 在Web开发中,由于浏览器的安全策略限制...随着现代Web技术的发展,CORS(跨源资源共享)等新的跨域通信方案也被广泛采用,开发者可以根据实际情况选择最合适的方案来解决问题。

    前端Jquery,Vue通过授权URL直传阿里云OSS

    在Jquery中,我们可以使用`$.ajax`或`$.put`方法来发送PUT请求。例如: ```javascript $.ajax({ url: '签名URL', type: 'PUT', data: 文件二进制数据, processData: false, // 不转换data contentType: '...

    WebApi跨域访问 ASP.NET MVC4客户端 html客户端

    例如,使用jQuery的AJAX方法: ```javascript $.ajax({ url: 'http://api.example.com/data', type: 'GET', dataType: 'json', success: function(data) { // 处理返回数据 }, error: function(jqXHR, ...

    jQuery1.3 jQuery1.3

    jQuery1.3对Ajax功能进行了增强,支持JSONP请求,这使得跨域数据获取变得更加便捷。同时,`$.ajax()`方法增加了`cache`参数,允许开发者控制是否缓存Ajax请求结果,以满足不同场景的需求。 ### 3. 新增和改进的函数...

    jqueryapi文档

    2. **JSONP(JSON with Padding)**:jQuery支持JSONP跨域数据获取,通过动态创建`&lt;script&gt;`标签来实现。 五、jQuery插件 jQuery的生态中包含大量插件,如用于图片轮播的`jQuery.cycle()`,表单验证的`jQuery....

    利用JQuery和Servlet实现跨域提交请求示例分享

    这表明跨域请求的实现方法并不局限于JQuery和Servlet,其他技术栈也有各自的实现方式,可以根据实际的项目需求和技术栈选择合适的解决方案。 通过以上介绍,可以了解到实现跨域请求的基本方法和可能涉及的技术点。...

    jquery文档快速查找

    3. `.animate()`: 自定义动画,可控制元素的任意CSS属性变化。 七、Ajax交互 1. `.get()`, `.post()`: 简单的HTTP GET和POST请求。 ```javascript $.get("url", data, function(response) { // 处理响应 }); ``` ...

    jquery base64编码解码插件

    一旦加载完成,你就可以通过jQuery对象调用相应的编码和解码方法: ```html &lt;script src="path/to/jquery.js"&gt; &lt;script src="path/to/jquery.base64.js"&gt; ``` 编码操作可以使用`.base64Encode()`方法: ```...

    jquery-JavaScript框架

    jQuery致力于跨浏览器兼容性,可以在主流浏览器如Chrome, Firefox, Safari, IE等上良好运行。尽管现代JavaScript库如React和Vue已经崛起,但jQuery在某些场景下仍然有其优势,尤其是处理老版本IE浏览器时。 ### 5. ...

    JQuery1.4.1中文参考离线手册

    - **自定义动画**: 使用 `.animate()` 方法可以创建自定义的动画效果,指定任意CSS属性的变化。 - **速度控制**: 动画可以通过 `duration` 参数设置速度,`easing` 参数选择缓动函数。 **4. Ajax交互** - **$.ajax...

    jqueryAPI函数chm文档

    jQuery提供了丰富的事件绑定和触发方法: - `click(fn)`:绑定点击事件。 - `on('event', fn)`:绑定任意事件,如"mouseover"。 - `off('event')`:取消事件绑定。 - `trigger('event')`:触发指定事件。 四、动画...

    jquery教材

    8. **插件开发**:jQuery 的可扩展性极强,开发者可以通过 `$.fn.extend()` 创建自定义方法,形成插件。 9. **流行插件**:《锋利的jQuery》教材中可能涵盖了诸如 jQuery UI、Bootstrap、jQuery Validation 等知名...

    jquery中文手册

    支持GET和POST方法,以及JSONP跨域请求。 - **$.get()** 和 **$.post()**: 简化的GET和POST请求,常用于快速简单的数据获取和提交。 - **$.getJSON()**: 专门用于获取JSON格式的数据,自动处理响应。 ### 5. ...

    JQuery教程.pdf

    JQuery允许将任意数据缓存到DOM元素上,使用`.data()`方法可以实现这一点。这是非常有用的,因为它可以减少与服务器的通信,还可以缓存计算开销大的数据。 以上是关于JQuery的详细知识点总结,内容覆盖了JQuery的...

Global site tag (gtag.js) - Google Analytics