【发布时间】:2012-06-08 14:42:45
【问题描述】:
我遇到了一个问题,我尝试了很多不同的方法都无法解决!!
适用于 Chrome、FF、IE9,但不适用于 IE8 或 IE7
概述
我有一个页面,Ajax 在整个 HTML 中来自本地 .aspx,其中读取 photobucket XML 提要放入 HTML 列表并返回。
http://custommodsuk.com/Gallery.aspx
我已经这样做了,因此页面排名不会受到 Google 速度排名的影响,因为服务器会关闭并进行调用。
代码
$.ajax({
type: "GET",
url: ajaxURL,
dataType:'html',
success: function (feedHTML) {
var galleryList = $(feedHTML).find('#galleryList').find('.listItem');
var noItems = galleryList.length;
console.log(feedHTML.type);
galleryList.each(function (index) {
...
});
}
});
我的尝试
正如你在console.log()中看到的, 类型未定义,feedHTML.length 显示没有。的字符。从我收集的内容来看,通常被视为一个字符串。
这是 JQuery 无法将响应转换为 jQuery 对象,我无法遍历它。因此 each 不会循环。
我见过很多人在 SO 上遇到相同/相似的问题,但没有答案,部分原因是废代码示例。
【问题讨论】:
-
我没有看到从该页面发出的任何 ajax 调用。
-
哦,我正在使用 XHTML 和适当的文档类型。
-
尖尖的,它正在发生... GET /Gallery/GalleryGet.aspx HTTP/1.1
-
啊好的;我的萤火虫被卡住了。好吧,字符串上没有“.type”方法。试试
typeof feedHTML也许吧。 -
您在表格单元格中的标记也无效;你有从
<span>元素内部开始的<p>元素。这可能会让解析器感到不安。
标签: javascript jquery ajax xhtml internet-explorer-8