我在浏览无序列表和检索列表项时遇到了一些麻烦。
foreach (MyTypeObject s in result)
{
oList.Clear();
{
oList.AppendFormat("<ul id='OuteroListItems'>");
oList.AppendFormat("<li>");
oList.AppendFormat("<ul id='oListItems'>");
oList.AppendFormat("<li>" + s.Name + "</li>");
oList.AppendFormat("<li>" + s.NameDesc + "</li>");
oList.AppendFormat("<li>" + s.StartDate + "</li>");
oList.AppendFormat("<li>" + s.EndDate + "</li>");
oList.AppendFormat("</ul>");
oList.AppendFormat("</li>");
oList.AppendFormat("</ul>");
sb.Append(oList);
}
好吧,我基本上有一个无序列表中的项目列表,然后是一个无序列表,其中包含一个包含项目的项目列表。
对于其中的每一个,我都在尝试选择开始日期
所以说我在'OuteroListItems'中有3个无序列表,我想选择所有这3个s.StartDates并在'oListItems'中将它们涂成红色。
我已经尝试了这个,但它只选择外部列表中的第一个元素第3个内部列表元素并将其着色为红色。
$("ul#OuteroListItems li").each(function(){
$("ul#oListItems li:eq(2)").css("color", "red");
});
答案 0 :(得分:1)
首先你需要使用类而不是ID :) IDs have to be unique或者你会得到各种各样的时髦行为......当它们不是唯一的时候它是无效的HTML,只需改变id=
in您的代码class=
来解决此问题。您的输出现在应如下所示:
<ul class='OuteroListItems'>
<li>
<ul class='oListItems'>
<li>s.Name</li>
<li>s.NameDesc</li>
<li>s.StartDate</li>
<li>s.EndDate</li>
</ul>
</li>
</ul>
然后,您可以使用以下选择器来获取每个StartDate <li>
:
$(".oListItems li:nth-child(3)").css("color", "red");