Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/232.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
Php 在“选择文本”选项中突出显示特定文本上的颜色_Php_Html_Jquery_Bootstrap 4_Jquery Select2 - Fatal编程技术网

Php 在“选择文本”选项中突出显示特定文本上的颜色

Php 在“选择文本”选项中突出显示特定文本上的颜色,php,html,jquery,bootstrap-4,jquery-select2,Php,Html,Jquery,Bootstrap 4,Jquery Select2,有人知道我该如何放置包含单词“stock”(查看图片)的颜色高亮显示吗 CSS、JavaScript、jQuery或任何语言都可以 试试这个 <select> <option>ARMAGEL HT 5MM ROLL(S) BLANKET TYPE(<span>STOCKS</span>:5 from)</option> <option>ARMAGEL HT 5MM ROLL(S) BLANKET TYPE(<s

有人知道我该如何放置包含单词“stock”(查看图片)的颜色高亮显示吗

CSS、JavaScript、jQuery或任何语言都可以

试试这个

<select>
  <option>ARMAGEL HT 5MM ROLL(S) BLANKET TYPE(<span>STOCKS</span>:5 from)</option>
  <option>ARMAGEL HT 5MM ROLL(S) BLANKET TYPE(<span>STOCKS</span>:5 from)</option>
  <option>ARMAGEL HT 5MM ROLL(S) BLANKET TYPE(<span>STOCKS</span>:5 from)</option>
</select>

您可以使用
RegExp
查找所需单词,并使用
replaceWith
使用span标记将单词包装起来。在span标记上应用类以指定所需颜色

var ChangeColor='Stocks';
var rgx=new RegExp('\\b('+ChangeColor+')\\b','ig');
$('div').contents().each(函数(){
$(this).replaceWith($(this).text().replace(rgx,$1'));
});
.red{
颜色:红色;
}

一些文本(股票)
一些文本(库存1)
如果您正在使用,则可以按以下方式执行。您可以突出显示搜索文本

CSS


。选择2-渲染匹配{
背景颜色:绿黄色;
}
JS


函数标记匹配(文本、术语){
var regEx=new RegExp(“(“+term+”)(!([^)”,“gi”);
var输出=text.replace(regEx,“$1”);
返回输出;
}
var query={};
$('.js数据示例ajax')。选择2({
allowClear:是的,
最小输入长度:2,
转义标记:函数(标记){
返回标记;
},
语言:{
搜索:函数(参数){
//在查询发生时拦截查询
query=params;
//更改此选项以适合您的应用程序
返回“搜索…”;
}
},
templateResult:函数(项){
如果(项目装载){
返回item.text;
term=query.term | |“”;
返回markMatch(item.text,term);
},
}
});

不工作:(但是谢谢你的帮助,我想我了解你的情况了,你应该看看这个,简而言之,用常规的
然后用CSSI进行样式设置是不可能的。我尝试将其转换为选择,但它不起作用?可能是从我这边来的?你能尝试转换吗?也谢谢你编辑我的po我是新手这能回答你的问题吗?
select option span{
  color: #ff0000;
}
<style>
.select2-rendered__match {
    background-color: greenyellow;
}
</style>
<script>
    function markMatch(text, term) {
        var regEx = new RegExp("(" + term + ")(?!([^<]+)?>)", "gi");
        var output = text.replace(regEx, "<span class='select2-rendered__match'>$1</span>");
        return output;
    }

    var query = {};
    $('.js-data-example-ajax').select2({
        allowClear: true,
        minimumInputLength: 2,
        escapeMarkup: function(markup) {
            return markup;
        },
        language: {
            searching: function(params) {
                // Intercept the query as it is happening
                query = params;
                // Change this to be appropriate for your application
                return 'Searching…';
            }
        },
        templateResult: function(item) {
            if (item.loading) {
                return item.text;
                term = query.term || '';
                return markMatch(item.text, term);
            },
        }
    });
</script>