如何使用 JQuery 自动完成来缩小结果范围(它显示所有结果)


How to use JQuery autocomplete to narrow down results(It is showing all results)

我有两个问题。现在,无论我输入什么内容,我的自动完成都会显示所有600个结果,它永远不会缩小到更少的结果。我还需要它只显示与我正在键入的内容匹配的最接近的 5 个结果。关于如何改进这一点的任何想法。

.PHP

<?php
include('inc/connections.php');


    $sql = "select top 5 a.item_desc_1, b.item_no from bmprdstr_sql b, imitmidx_sql a 
                    where a.item_no=b.comp_item_no and b.user_def_fld = 'x'
                    AND b.item_no like '%{$_POST['auto_me']}%' 
";

    $query = odbc_exec($conn, $sql);
    $json = array();
    while ($row = odbc_fetch_array($query)) {
        $json[] = $row['item_no'];
    }
    echo json_encode($json);

JQUERY HTML

<html>
<head>
    <title>
        test
    </title>
    <link rel="stylesheet" href="//code.jquery.com/ui/1.11.4/themes/smoothness/jquery-ui.css">
    <script src="//code.jquery.com/jquery-1.10.2.js"></script>
    <script src="//code.jquery.com/ui/1.11.4/jquery-ui.js"></script>
<script>
    $(document).ready(function(){
        $(function() {
            $("#auto_me").autocomplete({
                source: 'auto_complete.php',
                autoFocus:true
            });
        });
    });

</script>
</head>


<body>
<form id="auto">
<input type="text" id="auto_me" name="auto_me"/>
    </form>
</body>
</html>
$("#auto_me").autocomplete({
    source: function(request, response) {
        var results = $.ui.autocomplete.filter(myarray, request.term);
        response(results.slice(0, 10));
    }
});

在 jQuery UI 自动完成中限制结果