如何确定Jquery中Ajax调用的响应类型?有时,服务器发送json响应,有时仅发送html进行显示。现在我正在使用
if(response.indexOf('Error'))
//popup error message
else
response.username
response.address
您可以尝试如下操作:
$.ajax({
type: "POST",
url: "your url goes here",
data: "data to be sent",
success: function(response, status, xhr){
var ct = xhr.getResponseHeader("content-type") || "";
if (ct.indexOf('html') > -1) {
//do something
}
if (ct.indexOf('json') > -1) {
// handle json here
}
}
});
基本上也使用indexOf,但似乎更可靠。
问题内容: 我想知道对ajax调用(.get,.post,.ajax)的响应大小(以KB /字节为单位)-有什么想法吗? 谢谢! 问题答案: 我认为您最好在浏览器的调试器工具中检查此大小。您可以按照John Riche的建议获取数据长度,但这只是字符长度。仅此数据的实际字节大小可能会有所不同,具体取决于所使用的编码。然后,您也获得了标题。 不幸的是,我认为您无法从Javascript本身读取此信息
问题内容: 我无法从下面的代码行 jQuery.support.cors = true 打印成功 。 。包括这行 jQuery.support.cors = true; 将给出警告信息。那么,如何在不失去功能的情况下避免这种情况呢?我的主要目标是调用一个休息的Web服务,该服务返回JSON数据,而我必须利用JSON数据。请帮助我如何做到这一点?请提供工作样本 问题答案: 您可能会错过添加 // G
问题内容: 因此,我正在研究一种可以长时间显示页面请求的工具。 我通过使用jQuery Ajax(http://api.jquery.com/jQuery.ajax/)来做到这一点,并且我想找出获得响应时间的最佳方法。 我找到了一个描述在JavaScript中使用“日期”的线程(http://forum.jquery.com/topic/jquery-get-time- of-ajax-post)
我无法使用jQuery行打印下面代码中的success。支持cors=true;。包括jQuery行。支持cors=真;将发出警告信息。那么,如何在不丢失功能的情况下避免这种情况呢?我的主要目标是调用一个返回JSON数据的RESTWeb服务,我必须利用JSON数据。请帮助我如何做到这一点。请提供工作样品
问题内容: 在成功进行AJAX调用的情况下,我的页面具有一种形式和两种可能的响应,其中一种仅返回状态码。 我需要做的是检查成功回调中的对象是否有HTML内容,以便可以在页面上显示它们。 我已经知道可以通过将其添加为参数来访问回调,如下所示: 我唯一不知道的是如何检查该对象是否具有任何HTML内容。我怎样才能做到这一点? 问题答案: 您可能想要查看HTML MIME类型的响应标头。会将一个对象传递回
问题内容: 我一直在努力使AJAX与Jquery一起使用。到目前为止,我最大的问题是我真的不知道如何弄清楚我在哪里犯错。我真的没有调试AJAX调用的好方法。 我正在尝试建立一个管理页面,其中我要执行的功能之一就是更改SQL数据库中设置的权限。我知道.click函数正在被触发,因此我将其范围缩小了,但是我不确定从AJAX调用到SQL查询的链在哪里出了问题。 我的.js代码: 我的.php处理程序: