我试图让一个简单的jquery函数工作,但它不会让步。我有一些
<p id="actor_name">
具有各种值。每个都在它自己的<div class=result>
里面。目标是获取被点击的.result
div的值并将其附加到textarea。我无法相信我正在努力解决这个问题。我甚至创建了一个JSFIDDLE来将它与我的应用程序的其余部分分开,它仍然无法正常工作。
小提琴在这里:JSFIDDLE。
代码也在下面。我只是希望它不像缺少半骗局,所以我不会让自己看起来那么糟糕:/
HTML
<div class="found_actors">
<div class="result"><p id="actor_name">Actor Name1</p></div>
<div class="result"><p id="actor_name">Actor Name2</p></div>
<div class="result"><p id="actor_name">Actor Name3</p></div>
<div class="result"><p id="actor_name">Actor Name4</p></div>
<div class="result"><p id="actor_name">Actor Name5</p></div>
</div>
<textarea readonly="" style="resize: none;" rows="20" cols="20" name="actors"></textarea>
的jQuery
$(".result").click(function() {
$("[name='actors']").append($("#actor_name").val());
});
答案 0 :(得分:3)
请勿在多个p标签上使用相同的ID。我想这就是你要求的:
$("[name='actors']").empty().append($(this).find('p').text());
如果您不想在每次点击时清除textarea,请删除.empty()
。
答案 1 :(得分:0)
Id是针对独特的元素,我也认为你要找的是p元素的html而不是val()我留给你这个小提琴http://jsfiddle.net/JNaS9/16/
$(".result").click(function() {
var text = $(this).find("p").text();
$("textarea").empty().append(text);
});