繁体   English   中英

如何将自动建议结果限制为5个结果

[英]How do I limit my autosuggest results to 5 results

我只想为我的自动提示框提供5个结果,却不知道该怎么做。 任何帮助将不胜感激这是我的代码:

<div class="input-wrapper">
    <input type="text" class="autosuggest" value="Type in a city or town" onblur="onBlur(this)" onfocus="onFocus(this)" >
    <input type="submit" value="Search">

    <div class="dropdown">
        <ul class="result"></ul>
    </div>
</div>

这是我的脚本:

$(document).ready(function() {
    $('.autosuggest').keyup(function() {
        var search_term = $(this).attr('value');
        $.post('php/search.php', { search_term: search_term }, function(data) {
            $('.result').html(data);
            $('.result li').click(function(){
                var result_value = $(this).text();
                $('.autosuggest').attr('value', result_value);
                $('.result').html('');
            });
        });
    });
});
function onBlur(el) { 
    if (el.value == '') { 
        el.value = el.defaultValue; 
    } 
} 
function onFocus(el) { 
    if (el.value == el.defaultValue) { 
        el.value = ''; 
    } 
} 

最好的解决方案是在服务器上执行此操作。 但是,由于某种原因,如果在服务器上无法执行此操作,则可以尝试使用JS。 在这里,我期望服务器以以下格式'<li> data </ li>'返回数据。

$('.autosuggest').keyup(function() {
    var search_term = $(this).attr('value');

    $.post('php/search.php', { search_term: search_term }, function(data) {
        //Edit Start
        var dataarr=data.split('<li>');
        var totalrow=(dataarr.length>5)?5:dataarrr.length;
        $('.result').html('');
        for(var i=1;i<=totalrow;i++){//neglectine first data as it will be blank
             $('.result').html( $('.result').html('')+'<li>'+dataarr[i]);
        }
        //Edit end

        $('.result li').click(function(){
            var result_value = $(this).text();
            $('.autosuggest').attr('value', result_value);
            $('.result').html('');

        });
    });

});

将搜索结果限制在search.php文件(php / search.php)中。 你可以这样做;

$fetch = mysql_query("SELECT * FROM table LIMIT 5")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM