Добавить _top к тегам внутри определенного div - jQuery

Например, у меня есть несколько тегов внутри нескольких вложенных тегов div.

<div id="top_level_div">
    <div id="inner_level_div">
        <a href="http://yahoo.com>text</a>
    </div>
    <div id="inner_level_div1>
        <a href="http://yahoo.com>text</a>
    </div>
</div>

Мне нужно добавить целевой атрибут ко всем тегам внутри div с идентификатором «top_level_div». Другими словами, каждый тег «A» внутри «top_level_div» должен выглядеть так:

<a href="http://yahoo.com" target="_top">text</a>

Внутри тега «top_level_div» может быть много тегов div, и я не могу контролировать их внешний вид.

Каков наилучший способ добиться этого??

Редактировать....

Я попытался добавить следующий код в конец страницы непосредственно перед тегом ‹/body›, но он не работает.

<script>
$(document).ready(function(){
    $('#xrx_bnr_hdr').find('a').attr('target', '_top');
    $('#xrx_bnr_ftr').find('a').attr('target', '_top');
});
</script>

person Neel    schedule 27.02.2012    source источник


Ответы (5)


вот так:

   $("#top_level_div a").attr("target","_top");
person JKirchartz    schedule 27.02.2012
comment
Где я должен добавить этот код. Я пытался добавить его в разных местах, но, похоже, не работает - person Neel; 17.03.2012

#top_level_div a даст вам все теги привязки, потомки элемента с ID = top_level_div:

$('#top_level_div a').attr('target', '_top');
person Didier Ghys    schedule 27.02.2012

Как насчет такого:

$("#top_level_div a").attr("target","_top");
person Christofer Eliasson    schedule 27.02.2012

//select the root element
//then find all the `a` elements that are descendants of the root element
//then change that set of elements `target` attribute to `_top`
$('#top_level_div').find('a').attr('target', '_top');

Документы для .attr(): http://api.jquery.com/attr

person Jasper    schedule 27.02.2012

Пытаться,

$('#top_level_div').find('a').attr('target', '_top');

ДЕМО

person Selvakumar Arumugam    schedule 27.02.2012