搜索HTML表,忽略大写字母

时间:2013-10-29 12:13:23

标签: javascript search html-table livesearch

我使用php从.csv生成一个html表。

我得到了这个非常不错的JavaScript Livesearch,我用它来搜索表格。

这是代码:

function doSearch() {
    var searchText = document.getElementById('searchTerm').value;
    var targetTable = document.getElementById('dataTable');
    var targetTableColCount;


    //Loop through table rows
    for (var rowIndex = 0; rowIndex < targetTable.rows.length; rowIndex++) {
        var rowData = '';

        //Get column count from header row
        if (rowIndex == 0) {
            targetTableColCount = targetTable.rows.item(rowIndex).cells.length;
            continue; //do not execute further code for header row.
        }

        //Process data rows. (rowIndex >= 1)
        for (var colIndex = 0; colIndex < targetTableColCount; colIndex++) {
            rowData += targetTable.rows.item(rowIndex).cells.item(colIndex).textContent;
        }

        //If search term is not found in row data
        //then hide the row, else show
        if (rowData.indexOf(searchText) == -1)
            targetTable.rows.item(rowIndex).style.display = 'none';
        else
            targetTable.rows.item(rowIndex).style.display = 'table-row';
    }

    function capitaliseFirstLetter(string)
    {
        return string.charAt(0).toUpperCase() + string.slice(1);
    }
}

搜索对大写字母区分大小写,我希望忽略它,以便它无论如何都能找到条目。

如果我搜索“jon doe”,我想找到:“jon doe”,“Jon doe”,“Jon Doe”,“JON DOE”等。

如何将其实现到我现有的代码中?

1 个答案:

答案 0 :(得分:1)

您可以使用ToUpperCase来比较字符串 例如:

var myName = 'Jon Doe';

然后你会为你正在检查的任何名字做同样的事情

var searchName = GetElementById("MyTextbox");

var areEqual = myName.toUpperCase() === searchName.toUpperCase();

然后你可以做

if(areEqual == True) {
    document.write("Names Match");
}