javascript - Ajax 响应上的 Jquery 选择器

标签 javascript jquery css-selectors

我收到 html 形式的 ajax 响应,我需要提取指定 div 的内容。

它有效:

function callback(data) {
    container = $(data).filter('div.container#container');
    container_in = $(container.html()).filter('div.container-in');
    main_container = $(container_in.html()).filter('div#main-container.main-container');
    div_content = $(main_container.html()).filter('div#content.right-block');
}

它返回空

$(data).filter('div#content.right-block')

但是我可以在 $(data) 上使用一个选择器吗?

最佳答案

function callback(data) {
    container = $(data).find('#container');
    container_in = container.find('div.container-in');
    main_container = container_in.find('#main-container');
    div_content = main_container.find('#content');
}

您不需要继续使用 .html()$(),因为第一个 $(data) 会解析所有内容到 DOM 元素中。此外,ID 选择器上的额外标记和类限定符是多余的,因为 ID 必须是唯一的。

您还可以使用单个选择器获取内容:

div_content = $(data).find("#content");

关于javascript - Ajax 响应上的 Jquery 选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14829835/

相关文章:

javascript - d3.js 如何使用单选按钮结果来更新图表

javascript - 如何建立验证 html 中的至少一个输入字段?

javascript - 如何检查文件是否存在于 jQuery 或纯 JavaScript 中?

javascript - JQplot barRenderer "y-axis"值从负值开始

python - 如何提取嵌套在多个division元素中的anchor元素

css - 为什么 .b :not(#a>. b) 不起作用?

java - 在 Chartkick 中更改时间线

javascript - Webtask.io 后端找不到模块

jquery - 我的响应式幻灯片只显示第一张图片

css - 为什么不是 :hover work on an anchor without an href attribute?