我有一个href标签,旁边是 标签。我想在粗体标签之间添加新文本。
<a href=""></a> <b>old text</b>
所以在我的点击处理程序中,如何获得粗体标记之间文本的引用?
我知道有$(this + b),但我如何确保它只获得第一个而不是所有下一个项目(如jquery样本中)。
答案 0 :(得分:23)
尽管Magnar的答案已被标记为已接受的答案,但它实际上并未回答原始问题(必然)。从搜索中获得此问题时,这是一个问题。也许这个问题需要改写。无论如何,我的观点是,如果'a'和'b'之间有另一个元素,这将失败。要真正匹配'first,next'元素,请使用:
$('a').nextAll('b:first')
请注意,TimBüthe的答案也是错误的(它可能与以前的兄弟姐妹相匹配)。
答案 1 :(得分:8)
获取b-tag:
$(this).next();
使用以下内容获取b-tag内的文本:
$(this).next().text();
并使用以下内容在b-tag中设置文本:
$(this).next().text("Something new");
答案 2 :(得分:5)
你也可以这样做:
$(this).siblings(":first").text("Something new");
答案 3 :(得分:2)
只需添加,将所有这些保存在工具箱中,它们在遍历时都非常方便,它们都可以接受选择器(#myid,.myclass等)和过滤器(:visible,:first,:odd等) )
.parent()
.sibling()
.children()
.next()
.prev()