我正试图通过AJAX从index.php
获取新数据,并将其插入元素中。不幸的是,jQuery无法正确过滤数据。我使用了这里建议的相同选项。
修正版本:
$.ajax({
type: "GET",
url: "index.php",
data: "ajaxGetContent=1",
success: function(data){
$(data).filter(".bubble").html();
$("#bubbles").empty();
$("#bubbles").append(data);
}
});
执行此代码时,控制台中会显示以下错误消息:
"未捕获错误:语法错误,无法识别的表达式:所有请求的HTML代码"
当您将过滤后的数据添加到#bubbles
元素时,您没有使用它。请注意,data
在成功函数的第一行中保持不变。
你可能想要这样的东西:
success: function(data){
var filtered_data = $(data).filter(".bubble").html();
$("#bubbles").empty();
$("#bubbles").append(filtered_data);
}
注意url
的名称表明您正在使用ajax请求重新加载整个页面,然后只使用其中的一小部分。您应该在原始页面中单独包含这一小部分,并使用该脚本使用ajax加载,这样您就不必进行筛选。
这也将减少需要发送的数据量,以及现在在服务器上完成并立即丢弃的冗余处理。