动态地将文本分配给<a> from <li></li></a>

时间:2013-05-17 18:06:43

标签: javascript jquery html

使用jquery 1.8.3

我正在创建一个创建“li”元素并设置一些属性的函数,包括建立一个事件监听器。

$(this).closest('a').text(text); //$(this) is the li tag, and it does show that in the browser if you step through

dom结构如下所示:

<div>
    <a></a>
    <div>
        <ul>...</ul>
    </div>
</div>

如果在调试器中跟随它,则.text()方法和“text”变量都将填充正确的信息。分配部分发生了一些我无法跟踪的事情。我确信这是一个愚蠢而且显而易见的东西,但是我可以帮助克服这个驼峰。

如果您需要更多信息,请告诉我。

2 个答案:

答案 0 :(得分:3)

anchor tag不是 li 的祖先。相反,它是div的兄弟,其中包含了它。

你正在寻找我相信的

$(this).closest('div').prev('a').text(text);

答案 1 :(得分:0)

你必须使用jQuery中的html()函数:

$(document).ready(function(){

$("#element li ").click(function(){
  $("#linki").html($(this).html());

  });
});



  <a href="" id="linki" ></a>

    <a></a>
    <div>
        <ul id="element">
          <li>Hello</li>

        </ul>
    </div>

直播示例http://jsbin.com/opoqid/46/edit