ajax在success方法中打点不能调用

今天写前端又双遇到问题了,
我在success方法中不能显示我返回JSON的消息。结果一看是我没有写dataType:‘json’
下面贴上我的代码:

$("#submitBtn").click(function () {
            var obj = new FormData();
            var imgFile = document.getElementById("file").files[0];
            obj.append("uploadfile", imgFile);
            $.ajax({
                url: "upload",
                data: obj,
                type:"post",
                dataType:"json",     //我的问题出在这里
                contentType: false,
                processData: false,
                mimeType: "multipart/form-data",
                success: function (data) {
                    console.log(data);
                    console.log(data.msg);		//必须定义 dataType:"json",这里才能打点调用
                    alert("上传成功");
                },
                error: function (result) {
                    alert(result.msg);
                }
            });
        });

dataType (默认: Intelligent Guess (xml, json, script, or html))
类型: String
预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如XML MIME类型就被识别为XML。在1.4中,JSON就会生成一个JavaScript对象,而script则会执行这个脚本。随后服务器端返回的数据会根据这个值解析后,传递给回调函数。可用值:
“xml”: 返回 XML 文档,可用 jQuery 处理。.
“html”: 返回纯文本 HTML 信息;包含的script标签会在插入dom时执行。
“script”: 把响应的结果当作 JavaScript 执行。并将其当作纯文本返回。默认情况下不会通过在URL中附加查询字符串变量 “=[TIMESTAMP]" 进行自动缓存结果,除非设置了cache参数为true。Note: 在远程请求时(不在同一个域下),所有POST请求都将转为GET请求。(因为将使用DOM的script标签来加载)
“json”: 把响应的结果当作 JSON 执行,并返回一个JavaScript对象。在 jQuery 1.4 中,JSON 格式的数据以严格的方式解析,如果格式有错误,jQuery都会被拒绝并抛出一个解析错误的异常。(见json.org的更多信息,正确的JSON格式。)
“jsonp”: 以 JSONP 的方式载入 JSON 数据块。会自动在所请求的URL最后添加 “?callback=?”。默认情况下不会通过在URL中附加查询字符串变量 "
=[TIMESTAMP]” 进行自动缓存结果,除非将 cache参数设置为true。
“text”: 返回纯文本字符串。
多个空格分割的值:从 jQuery 1.5 开始, jQuery可以内容类型(Content-Type)头收到并转换一个您需要的数据类型。例如,如果你想要一个文本响应为XML处理,使用"text xml"数据类型。您也可以将一个JSONP的请求,以文本形式接受,并用jQuery以XML解析: “jsonp text xml”。同样地可以使用"jsonp xml"简写,首先会尝试从 jsonp 到 xml 的转换,如果转换失败,就先将 jsonp 转换成 text, 然后再由 text 转换成 xml。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值