1

我有一个 ContentEditable 部分。我想获取用户选择的内容,然后用新字符串替换它。

所以我想要所选字符串的开始和结束,删除旧字符串,将新字符串放在适当的位置(会更长)。

例子:

Typed String: 'Hello, World!'
Selected String: 'World'
String to replace with: '** World **'

我想在选定的单词周围添加“星号”,就像 StackOverflow 为使文本加粗所做的那样。

我在 StackOverflow 上阅读了无数问题,但没有人能回答这个问题。而且我尝试了很多不起作用的片段。:P。

注意:我正在使用 jQuery。

谢谢。

4

2 回答 2

1

该线程基于将所选文本包装在一个跨度中......非常接近您想要的。代码和小提琴应该给你你需要的东西

用 span 包裹选定的文本节点

于 2012-02-28T03:38:44.350 回答
0
var str = 'Hello, World!'; var foo = 'World'; var bar = '** World **';

str = str.replace(foo, bar);
于 2012-02-28T03:15:30.560 回答