我正在尝试重新加载页面的一部分:
function LoadAssets() {
console.log($('#AssetResults').html());
$.ajax({
url : 'Assets_Home.cfm',
type : 'POST',
success : function(data) {
console.log($(data).find('#AssetResults').html());
$("#AssetResults").html($(data).find('#AssetResults').html());
}
});
}
Assets_Home.cfm是当前页面。数据正确返回页面,$(数据)在控制台中如下所示:
w.fn.init(38) [text, comment, text, script, text, meta, text, link, text, script, text, script, text, script, text, script, text, link, text, link, text, link, text, link, text, title, text, style, text, div#NavigationBar, text, comment, text, div, text, div#AssetResults, text, script]
并且$(data).find('#AssetResults').html()
未定义。
我没有选择它吗?
答案 0 :(得分:1)
find()
搜索元素的内容,但它本身并没有找到顶级元素。所以你需要将返回的值包装在另一个元素中。
var div = $("<div>", { html: data });
var assetResults = div.find("#assetResults").html();
您还可以使用.load()
方法,该方法允许您在网址中添加选择器。
$("#AssetResults").load('Assets_Home.cfm #AssetResults');