在JSP的for循环中添加Li元素但是:a first,last或nth child总是给出最后一个元素

时间:2012-12-15 08:04:38

标签: jquery css css-selectors

我是Jquery和CSS的新手。我试图在JSP-for循环中添加基于某些条件的li元素,如下所示:

<ul id="my-criteria-list" >
<%        
for( int i = 0 ; i < mychoices.length ; i++ )
{
  if( i > 0 )
  { 
  %>
   <li class="divider">|</li>  
  <%
  }%>
  <li class="my-criteria"><a href="Landing Page" onclick="goTo(this);"><%=mychoices[i])%></a></li>
    <%
}
  %>       
</ul>

MyChoices长度为4,JSP页面正确显示所有li元素。但是当我做的时候

 $('li a:first-child').trigger('click');

甚至

 $('li a:nth-child(1)').trigger('click');

仅选择最后一个元素。这意味着<LI>中只有一个元素?我需要触发第一个<LI>元素的点击。任何帮助/建议?

1 个答案:

答案 0 :(得分:3)

您的代码正在选择第一个孩子a而不是父li。您要做的是选择父li内的第一个孩子ul,然后选择并点击其中的a

试试这个:

$('ul#my-criteria-list li:first-child').find("a").trigger('click');