Jquery 仅复制具有选定类的下一个列表中的文本

Jquery 仅复制具有选定类的下一个列表中的文本,jquery,Jquery,我有一个列表,它可以作为一个选择框使用,因此,通过单击所选项目,将显示一个列表,您可以选择另一个项目 这很好,但当我尝试创建两个或多个列表时,所选副本的名称将复制到所有所选名称(克隆的.clonedspan),其中它应该仅是下一个名称中的一个,在JSFIDLE示例中,而不是“Item 1.1Item 2.2”,克隆的类的第一个span应该只显示“Item 1.1”,下面显示的一个span“项目1.1项目2.2”应为“项目2.2”,因为它是第二个列表中的标题/选定项目,依此类推 我发现问题在于以下

我有一个列表,它可以作为一个选择框使用,因此,通过单击所选项目,将显示一个列表,您可以选择另一个项目

这很好,但当我尝试创建两个或多个列表时,所选副本的名称将复制到所有所选名称(克隆的
.cloned
span),其中它应该仅是下一个名称中的一个,在JSFIDLE示例中,而不是“Item 1.1Item 2.2”,克隆的类的第一个span应该只显示“Item 1.1”,下面显示的一个span“项目1.1项目2.2”应为“项目2.2”,因为它是第二个列表中的标题/选定项目,依此类推

我发现问题在于以下代码:

$(".cloned").text($(".selected").text());
我尝试了以下方法,但不起作用:

$(".cloned").text($(".options").closest(".selected").text());
如何仅显示列表正下方的
.clone
span中列表中的
.selected


演示:

最近的
选择所选元素的最近的
父元素
,而不是最近的元素,您可以使用
父元素
上一个
方法

$('.options li').click(function () {
    $(this)
          .addClass('selected')
          .siblings()
          .removeClass('selected')
          .parent()
          .hide()
          .prev('.cloned')
          .text(this.textContent || this.innerText);
});

在页面加载中,您可以使用
文本
的功能:

$(".cloned").text(function(){
     return $(this).next().find(".selected").text()
});

如果(答案==(函数(未定义){return undefined;})()$('vote-up-off')。单击();
感谢未定义,效果很好,最后在单击时消除了重复。但是默认情况下,当页面加载时,我仍然有相同的问题。太好了,非常感谢!所以我想到的是($(.cloned”).text($(.selected”).text()))如果没有函数就无法工作吗?@user1901096不客气,这样你就有了最初的结果。好的,很高兴知道。再次感谢,投票通过并接受了答案。