如何使用javascript从gridview筛选任何项目

如何使用javascript从gridview筛选任何项目,javascript,asp.net,Javascript,Asp.net,我想从下面的gridview中筛选数据。有一个文本框。我想根据文本框中的值过滤Product code字段,无需回发。谁能告诉我java脚本函数将是什么 <td> <asp:TextBox ID="TextBox1" runat="server" Width="362px"></asp:TextBox> </td> <td align="left" width="100%"> <asp:datagrid

我想从下面的gridview中筛选数据。有一个文本框。我想根据文本框中的值过滤Product code字段,无需回发。谁能告诉我java脚本函数将是什么

<td>


    <asp:TextBox ID="TextBox1" runat="server" Width="362px"></asp:TextBox>


</td>

<td align="left" width="100%">
    <asp:datagrid id="Datagrid1" runat="server" Height="128px" Width="946px"
        CellPadding="0" AutoGenerateColumns="False" BackColor="Transparent" BorderWidth="1px" 
        BorderColor="#E0E0E0" OnItemDataBound = " grdItemList_ItemDataBound">
        <AlternatingItemStyle CssClass="GridAlternateRowStyle"></AlternatingItemStyle>
        <ItemStyle CssClass="GridRowStyle"></ItemStyle>
        <HeaderStyle Font-Bold="True" CssClass="GridColumnHeaderStyle"></HeaderStyle>
        <FooterStyle HorizontalAlign="Right" VerticalAlign="Middle"></FooterStyle>
        <Columns>
            <asp:TemplateColumn>
                <HeaderStyle Width="25px"></HeaderStyle>
                <HeaderTemplate>
                    <asp:CheckBox ID="CheckAll" language="javascript" onclick="return CheckAll_onclick(this.checked)"
                        Runat="server" />
                </HeaderTemplate>
                <ItemTemplate>
                    <asp:CheckBox ID="DeleteThis" language="javascript" onclick="return DeleteThis_onclick(this.checked)"
                        runat="server" />
                </ItemTemplate>
            </asp:TemplateColumn>
            <asp:TemplateColumn>
                <HeaderStyle Width="100px"></HeaderStyle>
                <HeaderTemplate>
                    Product Code
                </HeaderTemplate>
                <ItemTemplate>
                    <asp:LinkButton ID="Code" Text='<%# DataBinder.Eval (Container.DataItem, "PRODUCTCODE") %>' runat="server" OnClick = "EditItem"/>
                </ItemTemplate>
            </asp:TemplateColumn>
            <asp:BoundColumn HeaderText="Product ID" DataField="PRODUCTID" Visible = 'False'></asp:BoundColumn>
            <asp:BoundColumn HeaderText="Product Name" DataField="PRODUCTNAME"></asp:BoundColumn>
            <asp:BoundColumn HeaderText="Price" DataField="PRICE"></asp:BoundColumn>
            <asp:BoundColumn HeaderText="Date" DataField="PURDATE"></asp:BoundColumn>
        </Columns>
        <PagerStyle NextPageText="" PrevPageText="" Mode="NumericPages"></PagerStyle>
    </asp:datagrid>
</td>

产品代码

我添加了这个javascript函数,可以正常工作

<script type="text/javascript" charset="utf-8">

        function filter(term, _id, cellNr) {
            var suche = term.value.toLowerCase();
            var table = document.getElementById(_id);
            var ele;
            for (var r = 1; r < table.rows.length; r++) {
                ele = table.rows[r].cells[cellNr].innerHTML.replace(/<[^>]+>/g, "");
                if (ele.toLowerCase().indexOf(suche) >= 0)
                    table.rows[r].style.display = '';
                else table.rows[r].style.display = 'none';
            }
        }
</script>


    Filter:<input type="text" id="FilterTextBox" name="FilterTextBox" onkeyup="filter(this, 'Datagrid1', 0)"/>

函数过滤器(术语,单元id,单元编号){
var suche=term.value.toLowerCase();
var table=document.getElementById(_id);
var-ele;
对于(var r=1;r/g,”);
if(ele.toLowerCase().indexOf(suche)>=0)
table.rows[r].style.display='';
else表.rows[r].style.display='none';
}
}
过滤器:
然后对gridview进行如下编辑:---


我添加了这个javascript函数,可以正常工作

<script type="text/javascript" charset="utf-8">

        function filter(term, _id, cellNr) {
            var suche = term.value.toLowerCase();
            var table = document.getElementById(_id);
            var ele;
            for (var r = 1; r < table.rows.length; r++) {
                ele = table.rows[r].cells[cellNr].innerHTML.replace(/<[^>]+>/g, "");
                if (ele.toLowerCase().indexOf(suche) >= 0)
                    table.rows[r].style.display = '';
                else table.rows[r].style.display = 'none';
            }
        }
</script>


    Filter:<input type="text" id="FilterTextBox" name="FilterTextBox" onkeyup="filter(this, 'Datagrid1', 0)"/>

函数过滤器(术语,单元id,单元编号){
var suche=term.value.toLowerCase();
var table=document.getElementById(_id);
var-ele;
对于(var r=1;r/g,”);
if(ele.toLowerCase().indexOf(suche)>=0)
table.rows[r].style.display='';
else表.rows[r].style.display='none';
}
}
过滤器:
然后对gridview进行如下编辑:---



您需要实现Ajax,因为您使用的是点网,可以放置Ajax更新面板,然后剪切文本框和网格视图,然后使用面板内的按钮或文本Box的文本更改事件,以编程方式筛选网格。也考虑使用KokOut.js,它有很好的实现这种客户端过滤的方法。我对ajax一无所知。ajax浏览器独立吗?如果我想实现ajax,那么先决条件是什么@Usman WaheedYou需要实现Ajax,因为您使用的是点网,可以放置Ajax更新面板,然后剪切文本框和网格视图,然后使用面板内的按钮或文本Box的文本更改事件,以编程方式筛选网格。它有很好的实现这种客户端过滤的方法。我对ajax一无所知。ajax浏览器独立吗?如果我想实现ajax,那么先决条件是什么@乌斯曼·瓦希德