【发布时间】:2021-10-04 05:57:28
【问题描述】:
我想从 a 中获取文本,并在文本中添加一些属性,并在按下按钮时将其显示在另一个文本中。
这是我的代码的一部分 - 如果我使用 console.log() 将记录正确的文本,但 append(x) 只写入 option[i] 值而没有任何 HTML 代码。
这里应该有什么解决办法?
var options;
$(function() {
options = $('div#Thelper2_container textarea').val().split('\n');
$.fillTextArea();
});
$.fillTextArea = function() {
for (let i = 0; i < options.length; i++) {
var y = i + 1;
var x = String('<span class="textToSelect" value="' + y + '"></span>' + options[i] + '</span>\n');
$('div#Thelper4_container textarea').append(x);
}
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="Thelper2_container">
<textarea rows="5" cols="100">Line 1
Line 2
</textarea>
</div>
<div id="Thelper4_container">
<textarea rows="5" cols="100"></textarea>
</div>
【问题讨论】:
-
使用 val 而不是 append
-
这样之前的值会被覆盖,所以只有最后一次迭代的文本会在textarea中
-
查看我的UPDATED answer 了解我的意思
-
我给你做了一个 sn-p 并删除了一个
})- 如果你实现接受的答案,你的代码也会附加空行
标签: javascript jquery arrays