不同的操作取决于 jquery ajax 中返回的内容类型

Posted

技术标签:

【中文标题】不同的操作取决于 jquery ajax 中返回的内容类型【英文标题】:Different action depending on returned content type in jquery ajax 【发布时间】:2010-11-16 17:22:26 【问题描述】:

有什么方法可以评估返回的 jquery ajax 请求的内容类型并根据内容类型执行不同的操作?

例如,如果内容类型是 html,我想将其附加到我页面上的某个 div。 如果内容类型是文本/javascript,我只想评估 javascript。 如果内容类型是 JSON,我想根据自己的需要处理返回的 JSON 数据。

不确定这是否可能。

【问题讨论】:

【参考方案1】:
var xhr = $.post(action, params, function(data)                            
     if (xhr.getResponseHeader("Content-Type") == 'application/pdf') 
    ...
                               
);

【讨论】:

【参考方案2】:

是的,有可能……

$.ajax(

  // Set the URL, method, parameters, yada, yada, yada

  complete:function(xhr, stat) 
    var typ = xhr.contentType;
    var res = xhr.responseText;

    alert("Type: " + typ);
  
);

【讨论】:

以上是关于不同的操作取决于 jquery ajax 中返回的内容类型的主要内容,如果未能解决你的问题,请参考以下文章

jQuery Ajax Json 响应 - 检查是不是为空

jQuery Ajax 从控制器操作方法返回未定义

Struts 2 操作未将所需结果返回给 Jquery Ajax 调用

Jquery中ajax的使用

使用 jQuery 提交表单 [关闭]

jquery操作ajax返回的页面元素