【问题标题】:Check if user typed certain text in textarea检查用户是否在 textarea 中输入了某些文本
【发布时间】:2013-11-19 18:51:15
【问题描述】:

我怎样才能做到,如果用户输入@sometext,文本会在单词以@开头并在有空格的地方结束。

例如,假设用户键入以下内容(我使用粗体代替颜色):

@username这是一些文本。

我知道我必须使用以下内容,但我不确定如何继续:

$("textarea").keyup(function() {

}

请帮忙。

【问题讨论】:

  • 这不会得到 textarea 中的所有内容吗?
  • 你的意思是要改变textarea的颜色,还是在其他地方用颜色显示文字?
  • 您不能在文本区域中设置单个单词的样式
  • 您想使用 contentEditable div 进行此类样式设置。

标签: javascript jquery


【解决方案1】:

要获取 textarea 中的文本并在不同元素中显示颜色编码,请在要为其设置颜色的文本中的每个项目周围放置一个标签,并设置该标签的样式。

例子:

$("textarea").keyup(function() {
  $('div').html($(this).val().replace(/(@[^ ]+)/g, '<span>$1</span>'));
});

演示:http://jsfiddle.net/Guffa/HCt6E/2/

【讨论】:

  • @user623952:是的,你是对的,我忘记了全局标志。现在可以了。
猜你喜欢
  • 2012-02-03
  • 1970-01-01
  • 2019-11-29
  • 1970-01-01
  • 1970-01-01
  • 2013-05-20
  • 2012-08-17
  • 1970-01-01
  • 2016-08-24
相关资源
最近更新 更多