jQuery替换标记的文本
jQuery replace marked text
我正在尝试替换元素中特定的高亮显示(标记)文本。
到目前为止,我就是这样得到突出显示的文本的:
var markArea = $('.ElementText textarea').get(0);
var text = markArea.value.substring(markArea.selectionStart, markArea.selectionEnd);
因此,如果我在文本区域中有这样的内容:"苹果香蕉苹果橙"并标记第三个单词(苹果),我想完全替换我标记的内容,而不在文本区域出现任何其他"苹果"。
有没有一种方法可以指定代码应该在字符串中查找替换的起始和结束区域?
你可以试试这样的东西,
var markArea = $('.ElementText textarea').get(0);
var startStr = markArea.value.substring(0,markArea.selectionStart);
var endStr = markArea.value.substring(markArea.selectionEnd);
var text = startStr +"REPLACEMENT VALUE HERE"+ endStr;
$('.ElementText textarea').val(text);
我会玩一点这个,它可能在startStr或endStr上偏离1(我总是把它搞砸:/),但这应该能做你想做的事情。
在上面的答案之前写了这个,但我会保留它,因为这只是一种不同的代码编写方式/不使用jQuery:
function replaceAtIndex(str,s,e,rep){
return str.slice(0,s) + rep + str.slice(e);
}
markArea.value = replaceAtIndex(markArea.value,markArea.selectionStart,markArea.selectionEnd,"replacement");
相关文章:
- 使用JavaScript将标题文本替换为按钮文本
- jQuery在用新文本替换HTML文本时淡出HTML文本,而不是仅显示
- 为什么不'使用此JavaScript将文本替换为不起作用的链接
- 将元素文本替换为子项中的值
- 使用 Jquery 将文本替换为笑脸图像
- 将页面上的文本替换为 jQuery 并提示文件下载
- 使用 JavaScript 将文本替换为图像
- 将 d3 演示中的圆圈和文本替换为包含自定义 HTML 和 ko 绑定的 foreignObject
- JavaScript无法用新文本替换文本
- 将表中的文本替换为用户友好的文本
- 将.onclick属性中的文本替换为javascript
- Javascript/Jquery.使用带通配符的正则表达式将纯文本替换为html
- 按名称将文本替换为 JavaScript 属性的内容
- 如何将 JSON 字符串中的文本替换为 Greasemonkey 的用户脚本
- Javascript:用文本替换整个锚点
- 在Chrome扩展程序中将文本替换为Treewalker
- 通过将文本替换为类来换行/中断列表元素
- 如何使用javascript将文本替换为彩色文本
- JavaScript - 消除文本替换的延迟
- j查询遍历和文本替换