javascript - 替换方法无需 html 格式,但可以使用格式

标签 javascript jquery

当用户单击单元格值时,我尝试替换文本的颜色。似乎当我尝试在 html 中使用格式时,它停止工作,但是,它在没有格式的情况下工作得很好。 JSFiddles 将帮助您理解我正在讨论的内容。在此之前,我想先提几点:

  1. 当我不格式化时,我只是使用

    <div id='jqxPanel' style=" font-size: 13px; font-family: Verdana;"> My content here </div>var text = panel.text();

  2. 当我使用格式化时,我正在使用

    <div id='jqxPanel' style=" font-size: 13px; font-family: Verdana;"><div style="margin: 10px;"><pre>My content here </pre></div></div>var text = panel.html();

这是工作 JSFiddle没有任何格式且不起作用JSFiddle具有格式化功能。如何使不工作的 JSFiddle 正常工作以便我可以看到突出显示的文本?

最佳答案

我更新了您的JSFiddle

$("#jqxgrid").on("cellclick", function (event) 
                   {
    var value = event.args.value;
    var color = "#FF0000";
    var highlighted =                  
        text.replace( new RegExp(value, 'ig' ), '<span style="color:' + color + ';">' + value + '</span>');

    panel.jqxPanel('clearcontent');
    panel.jqxPanel('append', highlighted);
  });  

您正在尝试替换“something”而不是“something”(注意空格)。您在搜索字符串和替换字符串中都执行此操作。

此外,替换函数区分大小写。我添加了一个正则表达式以使其不区分大小写。

但是,这只是一个示例,您可以看到它用按钮的大小写替换了文本,因此“PATIENT”将突出显示“Patient”。

关于javascript - 替换方法无需 html 格式,但可以使用格式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39373567/

相关文章:

javascript - Bootstrap 3.0 : Trigger when content moved under a with fix nav bar

JQuery 和 Rails 3 ajax :failure callback

javascript - 使用 JQuery 迭代深层 XML 结构 - IE9

jQueryUI 和 Bootstrap 按钮

javascript - jQuery DataTables 初始化延迟

javascript - 未捕获的类型错误 : Object [object Object] has no method 'select2'

javascript - 我怎样才能捕捉到 firefox 拼写检查更正事件?

javascript - 将模板的 div 分成单独的模板或使用 ng-if 在具有多个 div 的单个模板中显示 div

当鼠标不在它上面时jQuery滚动div

javascript - 如何让 div 弹出 IFRAME 的限制?