我有一个TextArea,textBox和一个按钮。 TextArea有一些文本,例如这是一只猫。
现在我的要求是如果有人在TextArea中设置光标位置并在文本框中输入文本并单击按钮,则文本应该附加在光标位置而不是最后。 e.g。
TextArea:这是一只猫。 光标位置:在“a”之后 在TextBox中输入文本:黑色
输出:这是一只黑猫。
如何使用javascript执行此操作。
提前致谢。
答案 0 :(得分:5)
我之前已经回答过:
Inserting text at cursor in a textarea, with Javascript
另外需要注意的是,点击事件触发按钮时,IE将丢失插入位置。要解决此问题,您可以改为使用mousedown
事件,也可以通过添加unselectable="on"
属性使该按钮无法选择。
答案 1 :(得分:0)
使用Google
:How do I add text to a textarea at the cursor location using javascript
复制上述帖子中的代码(Tim Down),并替换
insertTextAtCaret(textarea, "[INSERTED]");
与
var textBox = document.getElementById("your-textbox-name");
insertTextAtCaret(textarea, textbox.value);