jquery - Autocomplete with multiple keywords -


i'm not sure if possible make jquery-ui autocomplete works multiple keywords same result.

here example rather old , couldn't seem work, older jquery files. i'm not familiar jquery , javascript can manage edit existing things.

this have (without adjustments multi-keyword):

    <script type="text/javascript">     $(document).ready(function() {         newauto();     });      function newauto() {         var products = [         <?php foreach($search__1 $search) {         echo "{value: '". $search['product_name'] ."'}, ";}?>         ];         $("#keyword").autocomplete({             source: function(requestobj, responsefunc) {                 var matcharry = products.slice(); // copy array                 var srchterms = $.trim(requestobj.term).split(/\s+/);                 // each search term, remove non-matches.                 $.each(srchterms, function(j, term) {                     var regx = new regexp(term, "i");                     matcharry = $.map(matcharry, function(item) {                         return regx.test(item) ? item : null;                     });                 });                 // return match results.                 responsefunc(matcharry);             },             open: function(event, ui) {                 // function provides no hooks results list, have trust selector, now.                 var resultslist = $("ul.ui-autocomplete > li.ui-menu-item > a");                 var srchterm = $.trim($("#keyword").val()).split(/\s+/).join('|');                 // loop through results list , highlight terms.                 resultslist.each(function() {                     var jthis = $(this);                     var regx = new regexp('(' + srchterm + ')', "ig");                     var oldtxt = jthis.text();                     jthis.html(oldtxt.replace(regx, '<span class="srchhilite">$1</span>'));                 });             }         });     }  </script> 

if understand ur question correctly, u want show list match multiple word of same sentence.

click here example

 <html>  <head>     <title>testing</title>     <link href="css/jquery-ui-1.10.3.custom.css" rel="stylesheet" type="text/css" />     <style type="text/css">         .srchhilite { background: yellow; }     </style>     <script src="scripts/jquery-1.9.1.min.js" type="text/javascript"></script>     <script src="scripts/jquery-ui-1.10.3.custom.min.js" type="text/javascript"></script>     <script type="text/javascript">          $(document).ready(function() {             newauto();         });          function newauto() {             var availabletags = ["win day", "win heart of", "win heart of someone"];             alert(availabletags);  // alert = win day,win heart of,win heart of             $("#tags").autocomplete({                 source: function(requestobj, responsefunc) {                     var matcharry = availabletags.slice(); // copy array                     var srchterms = $.trim(requestobj.term).split(/\s+/);                     // each search term, remove non-matches.                     $.each(srchterms, function(j, term) {                         var regx = new regexp(term, "i");                         matcharry = $.map(matcharry, function(item) {                             return regx.test(item) ? item : null;                         });                     });                     // return match results.                     responsefunc(matcharry);                 },                 open: function(event, ui) {                     // function provides no hooks results list, have trust selector, now.                     var resultslist = $("ul.ui-autocomplete > li.ui-menu-item > a");                     var srchterm = $.trim($("#tags").val()).split(/\s+/).join('|');                     // loop through results list , highlight terms.                     resultslist.each(function() {                         var jthis = $(this);                         var regx = new regexp('(' + srchterm + ')', "ig");                         var oldtxt = jthis.text();                         jthis.html(oldtxt.replace(regx, '<span class="srchhilite">$1</span>'));                     });                 }             });         }      </script> </head> <body>     <div>         <label for="tags">             multi-word search:         </label>         <input type="text" id="tags" />     </div> </body> </html> 

Comments

Popular posts from this blog

Change php variable from jquery value using ajax (same page) -

Pull out data related to my apps from Android Play Store and iOS App Store -

How can I fetch data from a web server in an android application? -