文本区域无法在键入后追加到.此外,不能附加新文本



我是javascript和jquery的新手。在学习的过程中,我遇到了一些问题。我想知道我在这里做错了什么。我使用一个textarea元素来输入。当我运行下面的jQuery脚本时,它会发布到我称之为readpost的潜水中。没问题,但我无法运行click Function来附加到textarea。此外,如果我开始在文本区域中键入,我就无法附加到文本区域。然而,如果我启动frest,我可以将其附加到文本区域,这没有问题。

$(".btn-post").click(function() {
$("div").append($("textarea").val() + '<br />');
$("textarea").val('');
$("textarea").html('');
});
$("div #icon > span").click(function() {
$(".textarea").append($(this).text());
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="row post-body">
<div class="col-2 p-0 post-img-holder my-auto p-1">
<div class="embed-responsive embed-responsive-1by1 text-center">
<div class="embed-responsive-item">
<a href="uuid">
<img class="post-img" src="$imgPath">
</a>
</div>
</div>
</div>
<div class="col-10 p-0">
<textarea class="post-input" type="textblock" placeholder="What do you want to share, uuid?"></textarea>
</div>
</div>
<div class="row post-footer">
<div class="col-10 float-left dropdown">
<a class="dropdown-toggle emoji-icon" href="#" role="button" id="dropdownMenuLink" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">😀</a>
<div id="emoji-icon" class="dropdown-menu" aria-labelledby="dropdownMenuButton">
<span>&#x1F600;</span><span>&#x1F603;</span><span>&#x1F604;</span><span>&#x1F601;</span><span>&#x1F606;</span>
<span>&#x1F605;</span><span>&#x1F923;</span><span>&#x1F602;</span><span>&#x1F642;</span><span>&#x1F643;</span>
</div>
</div>
<div class="col-2 float-right">
<button class="btn btn-secondary btn-sm btn-post" type="post">Post</button>
</div>

https://jsfiddle.net/hmwLox17/你少了两个,其中一个是你的图标id是#emoji-icon,但你只写了#icon,第二个缺失是你应该写$("textarea"(,而不是你写$(".textarea"(

$(".textarea"(表示u有一个类为textarea 的元素

#icon意味着你有一个元素的id是图标

$("div #emoji-icon > span").click(function(){
$("textarea").val($("textarea").val()+$(this).text());
});

最新更新