0

如何在下面的 HTML 中选择第二个 dd 元素的值?(编辑:这只是一个小列表,实际列表要长得多)。如果可能的话,也从值中删除 , ?

<dl class="field field-name-field-movie-genre field-type-taxonomy-term-reference field-label-inline clearfix">
    <dt>Genre</dt>
    <dd class="even">Love / Romance,</dd>
    <dd class="odd">Comedy,</dd>
    <dd class="even">Action</dd>
</dl>
4

5 回答 5

3

由于它具有“奇数”类,因此您应该能够将其用作选择器:

$('.odd')

或者,如果您想将其定义为字段元素的子元素,您可以使用:

$('.field .odd')

更新

要按位置选择特定元素,可以使用:nth-child()选择器:

$('.field :nth-child(2)')
于 2013-02-21T14:00:21.540 回答
1
var e = $("dl dd:eq(1)");
e.text(e.text().slice(0,-1));
于 2013-02-21T14:02:46.380 回答
1

我认为这样的事情应该有效

$('dl dd').eq(1).text().replace(/,/g,"");
于 2013-02-21T14:09:26.793 回答
1

您可以使用:nth-child() jQuery 选择器和 JavaScript 替换来进行字符串操作:

$('.field :nth-child(2)').val($('.field :nth-child(2)').val().replace(',', ''));
于 2013-02-21T14:10:39.330 回答
0

没有直接回答这个问题,但从你发布的内容来看,最好在服务器端去掉不需要的字符而不是使用 javascript/jquery。这将使页面更容易缓存并为用户带来更好的性能。

我假设该列表是使用使用 php 或类似的应用程序生成的。只需将string replace过滤器添加到生成 html 列表的任何函数中。

于 2013-02-21T14:41:50.240 回答