Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何使匹配字符加粗+;使用jQuery令牌输入时为红色_Javascript_Jquery_Html_Css_Jquery Tokeninput - Fatal编程技术网

Javascript 如何使匹配字符加粗+;使用jQuery令牌输入时为红色

Javascript 如何使匹配字符加粗+;使用jQuery令牌输入时为红色,javascript,jquery,html,css,jquery-tokeninput,Javascript,Jquery,Html,Css,Jquery Tokeninput,我正在使用 我想让匹配的字符也变成红色,但无法找到他们拥有的CSS或Javascript片段 他们的项目已启动。使用chrome开发者工具,我发现jquery tokeninput正在格式化搜索结果,如下所示: <ul style="display: block; overflow: hidden;"> <li class="token-input-dropdown-item2-facebook">Trad<b>in</b>g Spous

我正在使用

我想让匹配的字符也变成红色,但无法找到他们拥有的CSS或Javascript片段


他们的项目已启动。

使用chrome开发者工具,我发现jquery tokeninput正在格式化搜索结果,如下所示:

<ul style="display: block; overflow: hidden;">
    <li class="token-input-dropdown-item2-facebook">Trad<b>in</b>g Spouses</li>
    <li class="token-input-dropdown-item-facebook">T<b>in</b> Man</li>
</ul>
    交易配偶 铁皮人
因此,它不是使用css类来突出显示匹配的字符,而是手动将这些字符放入
标记中。在javascript源文件中快速搜索后,我能够找到以下函数:

// Highlight the query part of the search term
function highlight_term(value, term) {
    return value.replace(
      new RegExp(
        "(?![^&;]+;)(?!<[^<>]*)(" + regexp_escape(term) + ")(?![^<>]*>)(?![^&;]+;)",
        "gi"
      ), function(match, p1) {
        return "<b>" + escapeHTML(p1) + "</b>";
      }
    );
}
//突出显示搜索词的查询部分
函数项(值、项){
返回值.replace(
新正则表达式(
"(?![^&;]+;)(?!)(?![^&;]+;)",
“gi”
),功能(匹配,p1){
返回“+escapeHTML(p1)+”;
}
);
}
因此,我想这只是一个修改它的问题,以便能够定制匹配的字符样式。例如,您可以将返回字符串更改为:

return '<b class="match">' + escapeHTML(p1) + '</b>';
返回'+escapeHTML(p1)+'';

并将您的样式应用于b.matchcss类。

您应该使用Chrome开发工具(内置于Chrome中)或Firefox Firebug扩展。您可以右键单击粗体文本和“检查元素”。这应该会显示它周围的span标记,以及它们使用的类,以及应用于它的CSS样式。我已经尝试过了,但我无法捕获元素。如果GUI妨碍您右键单击它(我想这就是您的意思),您可以查看页面源代码并找出名称所在的位置以及它包含的标记/类。我已经这样做了将近1个小时,但运气不佳,这就是我发布问题的原因。我使用的是resultsFormatter,它覆盖了所有HTML:`resultsFormatter:function(item){return
  • “+”“+”“+item.first\u name+”“+item.last\u name+”+item.email+“
  • ”},`我无法实现你所说的。下面是我在回答中建议的一个实用的小提琴:。只需在输入框中键入红色即可查看结果。我已更新了您的小提琴,使其包含我的resultFormatter,但它不起作用。我使用tokeninput网站示例(使用resultFormatter的示例)制作了另一个JSFIDLE,效果很好:。输入“Alex”查看结果