IE ajax 返回 undefined,并举例模拟

张映 发表于 2014-04-14

分类目录: nodejs/vue/js/jquery

标签:, , ,

今天发现一个有趣的事情,ajax异步调用时,firefox,chrome返回正常,用jquery 1.4版本时,ie取不到返回值,也不报错,用jquery 1.8版本时,ajax有返回值,但是undefined,第一次遇到这样的问题,哈哈。

出现这样的问题,是因为文件保存编码和页面显示编码不一至造成的。各种浏览器,没有统一的规范,特别是IE,做浏览器兼容时,是比较郁闷的。下面模拟一下这个问题。

1,test.php采用gbk或者gb2312编码

<?php
header("content-Type: text/html; charset=utf8");    //设置页面显示为utf8
echo "aaa";
die;

2,index.html

<html>
<head>
</head>
<body>
<script type="text/javascript" src="jquery-1.8.0.min.js"></script>
<script type="text/javascript">
$(function(){
    $.ajax({
       type: 'post',
       url: 'test.php',
       success:function(data){
            alert(data);
       }
    });
});
</script>
</body>
</html>

亲,测试一下吧:demo



转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/jsjquery/1608.html