ajax()中dataType的重要性

1.通过F12得到,
当php端声明了返回格式是json,那么会在客户端的
Response Header中Content-Type:application/json;charset=utf-8;
当php端没有声明返回格式是json,那么会在客户端的
Response Header中Content-Type:Content-Type:text/html; charset=UTF-8;(默认)

2.W3SCHOOL上说,dataType如果不指定的话,jquery将自动根据http包mime信息来只能判断,在HTTP中,MIME类型被定义在Content-Type header中。

3.根据前两点,意思是说,如果Php端声明了json返回,那么js端可以不用写dataType="json";如果Php端没有声明json返回,那么js端必须写dataType="json";

所以,推荐写法如下:

<script>

$.ajax({
    type: "GET",
    url: "x.php",
    dataType:"json",
    success:function(data){
        alert(data.myname);
    },
    error:function () {
        alert("发生错误");
    }
});

</script>

补充:PHP端声明返回格式的语法是:

//指定该PHP返回的数据为json格式
header("Content-Type:application/json;charset=utf-8");
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,010评论 19 139
  • 第一章 入门 基本功能:访问和操作 dom 元素,控制页面样式,对页面的事件处理,与ajax完美结合,有丰富的插件...
    X_Arts阅读 1,068评论 0 2
  • Ajax 什么是ajax AJAX即“Asynchronous JavaScript and XML”(异步的Ja...
    恰皮阅读 4,141评论 5 48
  • Ajax的基本概念及使用 同步&异步 同步:必须等待前面的任务完成,才能继续后面的任务; 异步:不受当前主要任务的...
    magic_pill阅读 1,977评论 0 5
  • 一、作用: PHP只是以HTTP协议将HTML文档的标头送到浏览器,告诉浏览器具体怎么处理这个页面,至于传送的内容...
    changxiaonan阅读 2,911评论 0 4