首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据用户类型更改输入框文本的颜色

根据用户类型更改输入框文本的颜色
EN

Stack Overflow用户
提问于 2016-03-13 18:59:00
回答 1查看 435关注 0票数 0

当用户在运行时在输入框中输入时,我想要更改某些单词。有没有什么办法这样做,因为当我使用replace jQuery函数时,它会替换值,但不允许我更改它的css。谢谢

以下是我到目前为止所取得的成果

这是Javascript:

代码语言:javascript
复制
$("#submit-button").click(function(){
    var oldString = 'john',
    newString = '<span id="newChrome">chrome</span>'
    $("#text-editor").val($("#text-editor").val().replace(RegExp(oldString,"gi"),newString));
});

这是HTML

代码语言:javascript
复制
<input id="text-editor" maxlength="200" width:200px; />
<button id="submit-button">Submit</button>
EN

回答 1

Stack Overflow用户

发布于 2016-03-13 19:31:07

使用 div元素,您可以实现在大多数现代浏览器中尝试实现的功能。

代码语言:javascript
复制
$("#submit-button").click(function() {
  var oldString = 'john',
    newString = '<span class="newChrome">chrome</span>',
    regex = new RegExp(oldString, "gi"),
    value = $("#text-editor").html(),
    str = value.replace(regex, newString);
  $("#text-editor").html(str);
});
$("#text-editor").on('input',function(){
  $a = $(this).find('span')
  $a.filter(function(){
    return $(this).html() != 'john';
  }).removeClass('newChrome');
  $a.filter(function(){
    return $(this).html() == 'chrome';
  }).addClass('newChrome');
});
代码语言:javascript
复制
.newChrome{
  color: red;
}
#text-editor{
  outline: 1px solid black;
}
代码语言:javascript
复制
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<div contenteditable="true" id="text-editor" maxlength="200" style="width:200px;"></div>
<button id="submit-button">Submit</button>

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35969381

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档