扩展jQuery表搜索脚本

时间:2018-05-22 13:32:32

标签: jquery search

我有一个来自jQuery scripts的jQuery表搜索脚本,现在我想扩展它以在<p>标记中显示一条消息,如果没有找到结果。

脚本如下:

$('#searchInput').on('change, input', function() {
    selectOptionFilterVehicle();
    var searchTerm = $(this).val().toLowerCase().trim();
    $('#vehicleTable tbody tr').each(function() {
        var lineStr = $(this).text().toLowerCase();
        if (lineStr.indexOf(searchTerm) === -1) {
            $(this).hide();
        } else {
            $(this).show();
        }
    });
});

我以为我可以在if语句中添加一个简单的$('#noVhicle').html('Nothing found');$('#noVhicle').hide();但是会​​失败。

现在我有点困惑,有人会向我解释一下吗?

1 个答案:

答案 0 :(得分:1)

要处理已创建的项目,您需要创建变量并在发现某些内容时增加它,否则您可以显示错误

$('#searchInput').on('change, input', function() {
    // selectOptionFilterVehicle();
    var founded = 0;
    var searchTerm = $(this).val().toLowerCase().trim();

    $('#vehicleTable tbody tr').each(function() {
        var lineStr = $(this).text().toLowerCase();
        if (lineStr.indexOf(searchTerm) === -1) {
            $(this).hide();
        } else {
            $(this).show();
            founded += 1;
        }
        if ( founded === 0 ) {
            $("#noVhicle").show();
        } else {
            $("#noVhicle").hide();
        }
    });
});

Here is the fiddle