0

我使用 JQuery 自动完成,它工作正常,我的问题是;

假设短语是“Lenovo Y550 Notebook”,当我写“Lenovo Y550”或“Y550 Notebook”时自动完成是可以的,但当我写“Lenovo Notebook”时没有自动完成。

JQuery 是否有某种方式可以跳过一些单词,检查所有短语中的单词,而不仅仅是下一个?可以在 JQuery 自动完成中完成吗?

编辑:

auto_complete.php

<?php

/ MYSQL Connection data /

$q =  strtolower($_GET["q"]);
if (!$q) return;

$sql = "SELECT DISTINCT name AS name 
FROM products_names A JOIN products B ON A.id_product = B.id 
WHERE ((name LIKE '%$q%' AND language_code = 'pl') OR (name2 LIKE '%$q%' AND language_code = 'pl')) AND status = 0

";

$rsd = mysql_query($sql);
while($rs = mysql_fetch_array($rsd)) {
    $cname = html_entity_decode($rs['name']);
    echo "$cname\n";
}

?>

模板文件:

<script type="text/javascript">
$().ready(function() {
    $("#autosearch").autocomplete("auto_complete.php", {
        width: 352,
        max: 15,
        minChars: 2,
        cacheLength: 10,
        matchContains: true,
        selectFirst: false,
        scroll: false,
        autofill: true
    }).keydown(function(e){
    if (e.keyCode === 13) {
        $(this).closest('form').trigger('submit');
    }
});

});
</script>


<input id="autosearch" type="text" name="query" value="{$smarty.get.query}" class="search-input" />

此代码工作正常,但我想检查全名中的每个单词,而不仅仅是彼此相邻的单词。

4

0 回答 0