为什么穿回来的数据格式是json 但是.ajaxfileupload不认

发布于 2021-12-03 09:53:57 字数 539 浏览 822 评论 5

为什么穿回来的数据格式是json 但是.ajaxfileupload不认rt

这是返回格式显示json

这里返回的是text格式

一下是ajax的内容 不要问我为什么写的dataType : "text",,因为写dataType :"json"走了error


希望大神能够指导一二

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

贱贱哒 2021-12-03 17:09:25

可是如果我将dataType设置成json那么按道理说就是告诉插件使用json来解析这个text.可是这个时候$.ajaxFileUpload就走了error方法,这是不是表示无法用json解析?这时候该怎么办呢?怎么解析成json??

噩梦成真你也成魔 2021-12-03 17:02:35

回复
@吃瓜群众小海绵 : 那是因为你后台返回的还是json对象,不是返回的text

小情绪 2021-12-03 16:53:07

uploadHttpData: function( r, type ) {

        var data = !type;

        data = type == "xml" || data ? r.responseXML : r.responseText;

        // If the type is "script", eval it in global context

        if ( type == "script" )

            jQuery.globalEval( data );

        // Get the JavaScript object, if JSON is used.

        if ( type == "json" )

            eval( "data = " + data );

        // evaluate scripts within html

        if ( type == "html" )

            jQuery("<div>").html(data).evalScripts();

        return data;

    },

看源码里面的这个方法,它默认把返回数据全部作为text,如果你返回的json数据,就返回json数据格式的字符串,然后他使用eval转成json数据,总而言之就是后台返回的全是text,这个dataType只是告诉插件使用什么方式解析这个text

凡尘雨 2021-12-03 15:21:09

但是如果datatype写成json数据就无法取得了直接走ajax里的error方法了 ,这里该怎么处理

混吃等死 2021-12-03 11:44:20

dataType限制了回掉的数据格式,就算服务器给你json也会被ajax给转成text的   

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文