在成功进行AJAX调用的情况下,我的页面具有一种形式和两种可能的响应,其中一种仅返回状态码。
我需要做的是检查response
成功回调中的对象是否有HTML内容,以便可以在页面上显示它们。
我已经知道可以response
通过将其添加为参数来访问回调,如下所示:
function success(response) { }
我唯一不知道的是如何检查该对象是否具有任何HTML内容。我怎样才能做到这一点?
您可能想要查看HTML
MIME类型的响应标头。$.ajax
会将一个jqXHR
对象传递回您的success
回调,然后您可以调用.getResponseHeader()
:
function success( response, status, jqXHR ) {
if( jqXHR.getResponseHeader('content-type').indexOf('text/html') >= 0 ) {
...
}
}
问题内容: 如何确定Jquery中Ajax调用的响应类型?有时,服务器发送json响应,有时仅发送html进行显示。现在我正在使用 问题答案: 您可以尝试如下操作: 基本上也使用indexOf,但似乎更可靠。
null null 我想做的是,当我点击任何按钮时,它检查是否有任何其他按钮具有类“ButtonActive”,如果任何其他按钮具有这个类,它就从另一个按钮中移除这个类,并将它添加到我点击的按钮中。因此它应该始终是一个具有“ButtonActive”类的按钮。
问题内容: 我想知道对ajax调用(.get,.post,.ajax)的响应大小(以KB /字节为单位)-有什么想法吗? 谢谢! 问题答案: 我认为您最好在浏览器的调试器工具中检查此大小。您可以按照John Riche的建议获取数据长度,但这只是字符长度。仅此数据的实际字节大小可能会有所不同,具体取决于所使用的编码。然后,您也获得了标题。 不幸的是,我认为您无法从Javascript本身读取此信息
问题内容: 所以我需要在向客户端显示特定数据之前检查文件是否存在…使用jQuery我有这个: 当我尝试运行该功能时: (其中example.com是我的域),我总是收到200响应码。我想知道为什么会这样- 是因为我通过.htaccess设置了自定义错误页面吗?还是有更好的方法来做到这一点? 注意 :正在使用jQuery 1.5.1。 更新 :似乎它正指向通过.htaccess设置的自定义错误页面:
问题内容: 我试图仅使用jQuery在HTML元素为空的情况下调用函数。 像这样: 问题答案: 编辑: 正如某些人指出的那样,浏览器对空元素的解释可能会有所不同。如果您想忽略不可见的元素(例如空格和换行符)并使实现更加一致,则可以创建一个函数(或仅使用其中的代码)。 您也可以将其放入jQuery插件,但是您知道了。
问题内容: 我正在进行ajax调用来获取内容并像下面这样添加内容: 问题是,当我进行更改时,我什么也没得到(没有错误,只有html)。我假设body是一个标签,就像“ a”一样?我究竟做错了什么? 所以这对我有用: 但这不是: 问题答案: 恐怕通过jQuery对象(即)解析返回的HTML 以获取标记注定会失败。 原因是返回的是(try )。现在,根据jQuery文档,当从包含复杂HTML标记的字符