While filtering gridview from textbox show some message

痞子三分冷 提交于 2020-01-25 21:45:09

问题


I have a Gridview and textbox which is outside the gridview. I enter some text and filter records from the grid.

Now what I want is, I want to show No Records Found message if there are no matching records for the text inserted.

Below is my code for filtering

<input type="text" id="txtSearchSAP" onkeyup='FilterGrid(this);' class="field-style field-full align-none" maxlength="18" />

JS Code for filter

function FilterGrid(Obj) {
        var grid = document.getElementById('MainContent_grdSapDetails');
        var terms = Obj.value.toUpperCase();
        var cellNr = 0;
        var ele;
        for (var r = 1; r < grid.rows.length; r++) {
            ele = grid.rows[r].cells[cellNr].innerHTML.replace(/<[^>]+>/g, "");
            if (ele.toUpperCase().indexOf(terms) >= 0)
                grid.rows[r].style.display = '';
            else grid.rows[r].style.display = 'none';
        }
    }

回答1:


In top of your for loop you can check condition and you can add Message like this

function FilterGrid(Obj) {
        var grid = document.getElementById('MainContent_grdSapDetails');
        var terms = Obj.value.toUpperCase();
        var cellNr = 0;
        var ele;
     if(grid.rows.length >0){
        for (var r = 1; r < grid.rows.length; r++) {
            ele = grid.rows[r].cells[cellNr].innerHTML.replace(/<[^>]+>/g, "");
            if (ele.toUpperCase().indexOf(terms) >= 0)
                grid.rows[r].style.display = '';
            else grid.rows[r].style.display = 'none';
        }
       }
       else{
       alert("No Records Available);
          }
    }



回答2:


on your markup, set the EmptyDataText property of your GridView

<asp:GridView ID="GridView1" runat="server" EmptyDataText="No Records Found">
    <Columns>
    ......
    </Columns>
</GridView>


来源:https://stackoverflow.com/questions/43338571/while-filtering-gridview-from-textbox-show-some-message

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!