首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Ajax >

jquery官网的代码与微软的ajax的jquery代码有何差别

2013-01-01 
jquery官网的代码与微软的ajax的jquery代码有何区别?本帖最后由 goodnew 于 2012-09-30 00:46:38 编辑写了

jquery官网的代码与微软的ajax的jquery代码有何区别?
本帖最后由 goodnew 于 2012-09-30 00:46:38 编辑 写了一个jquery读取webservices 代码,用微软的jquery 好用,jquery 官网的就不行,而且这页代码只有在ie浏览器中好使,非ie就不行。代码目的是读取一个城市的webservices ,获取城市名后,填充的页面一个选择控件中,使用jquery ajax实现的。希望知道原因的指点一下,怎么用jquery官网的代码实现,并且兼容非ie?
  
整个页面代码如下,复制成一个网页就可以运行.


<!DOCTYPE>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>JQuery AJAX示例代码</title>
     <script src="http://code.jquery.com/jquery-1.8.2.min.js" type="text/javascript"></script>
    <!--<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>-->
<!--<script src="http://ajax.microsoft.com/ajax/jquery/jquery-1.4.4.min.js" type="text/javascript"></script>-->
    <script>
        $(function () {
var xmlWebServices ="http://www.webxml.com.cn/webservices/weatherwebservice.asmx/getSupportProvince";
            $.ajax({
                type: "post",
url: xmlWebServices,
                datatype: "xml",
                success: function (result) {
$(result).find("string").each(
                        function () {
                            //$(this).text()的“text”方法可以获取html容器和xml容器的文字
                            $("#selProvinces").append("<option value='" + $(this).text() + "'>" + $(this).text() + "</option>");
                        });
                }
            });
           
        })
   
    </script>
    <style type="text/css">
        #selProvinces
        {
            width: 227px;
        }
    </style>
</head>
<body>
     请选择你需要的省(市):<select id="selProvinces">
    </select><br />
</body>
</html>

[解决办法]
据我所知,你用官方jquery去访问跨域的东西,是有安全性方面的限制的,要想其它方法来实现吧。微软可能有放开这方面的限制吧。
[解决办法]
你使用的是IE6测试的?高版本IE也是不能跨域的


[解决办法]
如果WebServices是公开的,你可以考虑将读取这个WebServices的方法移至后台,然后前面直接读取本站内的页面,就不存在跨域了。中转一下吧
[解决办法]
你是本地浏览吧,没有发布站点通过http访问。

本地浏览IE可以跨域获取数据,非IE核心浏览器都不行。

如果是发布了通过http方法,ie,firefox都不行,除非使用JSONP或者动态页设置过一个跨域允许的响应头,叫什么给忘记了。并且设置响应头的方法部分浏览器支持,对象也不一样,IE8使用的是XDomainRequest

热点排行