Javascript 当我在HTML文本框中键入内容时,如何从结果集中高亮显示匹配文本

Javascript 当我在HTML文本框中键入内容时,如何从结果集中高亮显示匹配文本,javascript,php,jquery,Javascript,Php,Jquery,index.php页面,带有要搜索的文本框 <form role="form" name="frm_add" method="POST" enctype="multipart/form-data"> <script type="text/javascript"> $(function() { $( "#txt_itemna

index.php页面,带有要搜索的文本框

<form role="form" name="frm_add" method="POST" enctype="multipart/form-data">
    <script type="text/javascript">
    $(function() 
    {
        $( "#txt_itemname" ).autocomplete({
            source: './search.php'
        });
    });
    </script>
                                       
    <input type="text" id="txt_itemname" name="txt_itemname">
    <button type="submit"><i class='fas fa-search'></i>&nbsp;</button>
</form>
这是示例数组值
数组(“苹果”、“联想”、“LG”、“诺基亚”、“三星”、“索尼”)

我上面在index.php和search.php上的搜索代码运行良好。现在我想使用PHP、Javascript或jQuery做以下事情

  • 如果用户在文本框中键入
    s
    ,则下拉列表中会显示两个单词Sony&Samsung(索尼和三星)(该部分目前工作正常)。所以现在我想让下拉列表中索尼和三星的char
    s
    以不同的颜色突出显示

  • 我想在用户单击文本框时显示一些
    Cookies
    数据,当用户单击文本框时,这些Cookies数据应该显示在文本框下拉列表中


    • 也许您的数据是一个对象,所以这就是代码无法工作的原因,请确保您的数据是一个数组

      <script type="text/javascript">
        function getCookie(cname) {
        var name = cname + "=";
        var decodedCookie = decodeURIComponent(document.cookie);
        var ca = decodedCookie.split(';');
        for(var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') {
         c = c.substring(1);
        }
       if (c.indexOf(name) == 0) {
         return c.substring(name.length, c.length);
       }
      }
      return "";
      }
      
      var yourVar = getCookie("yourCookieName");
      
      
      函数getCookie(cname){
      变量名称=cname+“=”;
      var decodedCookie=decodeURIComponent(document.cookie);
      var ca=decodedCookie.split(“;”);
      对于(变量i=0;i

      您必须将您的search.php值声明为一个变量,然后与cookie合并,您可以使用ajax获取search.php值。

      当键入内容正常时,在下拉列表中显示数据。我在问题中提到的两件事上需要帮助。太好了,所以请帮帮忙
      <script type="text/javascript">
        function getCookie(cname) {
        var name = cname + "=";
        var decodedCookie = decodeURIComponent(document.cookie);
        var ca = decodedCookie.split(';');
        for(var i = 0; i < ca.length; i++) {
        var c = ca[i];
        while (c.charAt(0) == ' ') {
         c = c.substring(1);
        }
       if (c.indexOf(name) == 0) {
         return c.substring(name.length, c.length);
       }
      }
      return "";
      }
      
      var yourVar = getCookie("yourCookieName");