如何在<a> element</a>内访问子元素

时间:2011-08-03 12:00:49

标签: javascript jquery

我有这样的结构

 <ul>
  <li>
    <a>
     <img />
     <span />
    </a>
  </li>
  <li> 
    ......
  </li>
  <li> 
    ......
  </li>
 </ul>

我正在使用这样的jquery#

            $("ul#someid").find("li:last > a[name="some.....]

如何在上面的“a”元素中访问img元素和span元素。

我现在正在使用

  $("ul#pushedProducts").find("li:last > a[name= <%=PushedProductsParametersMapper.PARAMS_PRODUCTS_INFO%>]").children('span').attr({name:'<%=PushedProductsParametersMapper.PARAMS_PRODUCTS_INFO%>' + pushedProductsTypesCount, id:'<%=PushedProductsParametersMapper.PARAMS_PRODUCTS_INFO%>' + pushedProductsTypesCount , style :'display:none;'});

5 个答案:

答案 0 :(得分:3)

如果要同时选择两者,可以使用.children() [docs]

$("#someid").find("li:last > a[name=['someName']").children();

否则,只需再次使用child selector [docs]a > b > c
descendant selector [docs]a > b c

您可以根据需要合并selectors [docs]

答案 1 :(得分:0)

var $img = $("ul#someid").find('li:last > a[name="some....."]').children("img")

注意name

旁边的引号

答案 2 :(得分:0)

假设A标签有ID,

$('#id img')

$('#id span')

就足够了。使用$('。class img')等

,类也可以正常工作

答案 3 :(得分:0)

$("ul#someid li:first a[name='somename'] img")...
$("ul#someid li:first a[name='somename'] span")...

答案 4 :(得分:0)

$("ul#someid").find("li:last > a").children(); // will give you all children
$("ul#someid").find("li:last > a").find("img");
$("ul#someid").find("li:last > a").find("span");