如何使用jquery定位<li>项并更改其文本</li>

时间:2013-10-08 14:05:31

标签: javascript jquery

enter image description here

我正在尝试更改“li”项目组中的“li”项目。我有一段时间试图去改变它的'文本,任何人都可以指出我正确的方向。 我试过以下

 $("#chosen-results" ).find("li").text("hide trip history");

我知道这不会奏效,因为我需要更具体,但这就是我被困住的地方。 提前谢谢。

更新   我向所有回答问题的人道歉   这不是下拉列表中的最后一项,对不起误导。这真的只是许多“li”列表中的一个项目 米格尔

8 个答案:

答案 0 :(得分:1)

您可以使用:last Selector

执行此操作

<强> CODE:

$("#chosen-results").find("li:last").text("hide trip history");

<强>样本:


答案 1 :(得分:1)

$('ul.chosen-results li:last').text("hide trip history");

答案 2 :(得分:1)

试试这个

$('ul.chosen-results li.active-result.group-option').text('hide trip history');

答案 3 :(得分:1)

尝试

$("ul.chosen-results" ).find("li").last().text("hide trip history");

$("ul.chosen-results" ).find("li:last").text("hide trip history");

参考

http://api.jquery.com/find/

http://api.jquery.com/last/

http://api.jquery.com/last-selector/

答案 4 :(得分:1)

$("#chosen-results li:last").text("hide trip history");

这是一个jsFiddle:http://jsfiddle.net/hHwuV/

答案 5 :(得分:1)

使用选择器中的eq过滤器来过滤特定的。

   //sets for all.
 $("#chosen-results" ).find("li").text("hide trip history");



//sets for  the second result  //0 based
 $("#chosen-results" ).find("li").eq(1).text("hide trip history");

答案 6 :(得分:1)

首先,您可能想要阅读CSS选择器:

https://developer.mozilla.org/en-US/docs/Web/Guide/CSS/Getting_started/Selectors http://www.htmldog.com/guides/css/intermediate/classid/

现在,您的ul元素的 chosen-results不是ID,因此您需要以$('.chosen-results')开头。然后您想要其中的最后一个li,这样您就可以将:last-child选择器与.find()一起使用:

$(".chosen-results" ).find("li:last-child").text("hide trip history");

但请注意,这会影响所有li元素,这些元素是其父元素的最后一个子元素,并且位于带有类chosen-results的元素。如果有多个这样的元素,并且您只需要一个,那么您需要使用选择器更具体,或者可以在HTML中添加额外的类或ID。

答案 7 :(得分:0)

您应该可以使用last()

$( "li" ).last().text("The new text");

查看此fiddle进行演示。您还可以使用:last选择器:

$( "li:last ").text("The new text");

您也可以考虑查看traversing上的文档。