可以在textarea中识别复制和粘贴文本

Can copy and paste text be recognised in textarea

当我在下面的文本区域中复制并粘贴一些文本时,例如你好世界并添加一个项目符号,项目符号被添加在句子的末尾,例如你好世界•

那么我怎样才能确保项目符号出现在句子的开头,例如• 你好世界?由于某些原因,textarea 似乎无法识别复制的文本。

$('.add-bullet').click(function() {
    $(this).parent().next('textarea').val(function(idx, value){
        return value + '\u2022';
    });
    return false;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

 <div><a href="#" class="add-bullet">Add bullet</a></div>
    <textarea type="text" name="tata" placeholder="Write something.." ></textarea>

问题是你有 return value + '\u2022'; 这意味着获取当前值,并向其添加代表项目符号的 unicode 字符。应该是反过来的。此代码可以改进为仅修改当前文本行,以防文本区域有多行。

$('.add-bullet').click(function() {
    $(this).parent().next('textarea').val(function(idx, value){
        return '\u2022 ' + value;
    });
    return false;
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>

 <div><a href="#" class="add-bullet">Add bullet</a></div>
    <textarea type="text" name="tata" placeholder="Write something.." ></textarea>