• asp教程:关于jquery跨域彻底的解决方法


    声明:本文转自http://www.aspbc.com/tech/showtech.asp?id=1193

    经过一天的不断测试和探索,终于找到asp开发中彻底的解决jquery跨域的方法:

    前几天也写了一篇文章:jquery跨域的方法 ,后来在应用的过程中发现,这只是jquery跨域的基础,服务器端也需要做一些处理。

    首先介绍一下服务器端程序:

    <%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
    <% 
    response.Charset="utf-8"
    callback=request("callback") 

    str="{""status"":1,"&_
    " 'postPrice':["&_
    "{'Productid':1,'Productname': '手机',""Price"":25.5,""num"": 1000,""url"":""http://www.baidu.com""},"& _
    "{""Productid"":2,""Productname"": ""相机"",""Price"":75,""num"": 2000,""url"":""http://www.aspbc.com""}"& _
    "]}"
    response.write callback&"("&str&")"
    %>

    注意一下这里的: callback=request("callback")和下面的输出response.write callback&"("&str&")",这是jquery服务器端要增加的内容,用来返回给客户端的。

    客户端代码:

     <head> 

    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 

     <title>jquery跨域的彻底解决方法</title> 

    <script type="text/javascript" src="scripts/jquery-1.6.2.min.js" ></script>

     <script type="text/javascript"> 

     $(function(){ 

       $.getJSON("http://192.168.105.81/test/re.asp?callback=?", { name: "John",t:Math.random() }, 

           function(data){ 
              var status=data.status; 
             if(status==1){ 

                     var str=''; 

                   $.each(data.postPrice,function(i){                       

                       m=data.postPrice[i]; 

                       str+='<ol> '; 

                       str+='<li>产品ID:'+m.Productid+'</li>'; 

                       str+='<li>产品名称:'+m.Productname+'</li>'; 

                      str+='<li>价格:'+m.Price+'元</li>'; 

                       str+='<li>数量:'+m.num+'</li>'; 

                        str+='<li>网址:'+m.url+'</url>'; 

                       str+='</ol>'; 

                    } 

                    ); 

                   $("#div1").html(str); 

                } 

           }  

        );  

     }); 

    </script> 

    </head> 

     

    <body> 

    <div id="div1"></div> 

    </body> 

    </html>

    这样就行了。
    本来我发现服务器端生成的json字符串前面有一些jquery+字符串的东西,应该改变了json的格式,但到了客户端的时候,我们得到了data这个值,这个data中应该有服务器端子的那些jquery字符串的。但这个就会被jquery自动处理掉,不需要我们处理这个,我们只需要按平时的习惯去获取json字符串我们要的内容就行了。

    是不是挺好用的?

  • 相关阅读:
    python正则表达式
    pyperclip模块
    python画国旗
    linux6.5禁用telnet
    限制用户su到root
    按系统日期生成目录
    微软windows logo配色rgb
    fastclick使用与 fastclick ios11.3相关bug原因(ios输入框点击变得不灵敏,ios input失焦后,页面上移,点击不了)
    vue iframe嵌套页面高度自适应 (ios 宽度扩大的bug , ios展示比例问题)
    iOS设备 微信h5页面回退 内容不刷新的问题
  • 原文地址:https://www.cnblogs.com/shoupifeng/p/2657972.html
Copyright © 2020-2023  润新知