2

ajax応答をhtmlとして受け取り、指定された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)で1つのセレクターを使用できますか?

4

1 に答える 1

4
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');
}

最初はすべてをDOM要素に解析するため、.html()andを使い続ける必要はありません。また、IDは一意である必要があるため、IDセレクターの追加のタグおよびクラス修飾子は冗長です。$()$(data)

単一のセレクターでコンテンツにアクセスすることもできます。

div_content = $(data).find("#content");
于 2013-02-12T10:08:52.530 に答える