使用jQuery进行Gridview过滤,以便在页面中包含用户控件

时间:2012-08-17 09:37:52

标签: jquery asp.net .net

我已将我的用户控件(my.ascx)放在网页(1.aspx)上。 my.ascx包含gridview,search textbox&搜索按钮。 我需要根据我在搜索按钮点击事件中的搜索文本框中键入的文本在gridview中显示行。这就是我所做的。

在1.aspx:

<script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
<script type="text/javascript" language="javascript">
$(document).ready(function() {
$('#lblNoRecords').css('display','none');

$('#btnSubmit').click(function(e)
{
    // Hide No records to display label.
    $('#lblNoRecords').css('display','none'); 
    //Hide all the rows.
    $("#GridView1 tr:has(td)").hide(); 

    var iCounter = 0;
    //Get the search box value
    var sSearchTerm = $('#txtSearch').val(); 

    //if nothing is entered then show all the rows.
    if(sSearchTerm.length == 0) 
    {
      $("#GridView1 tr:has(td)").show(); 
      return false;
    }
    //Iterate through all the td.
    $("#GridView1 tr:has(td)").children().each(function() 
    {
        var cellText = $(this).text().toLowerCase();
        //Check if data matches
        if(cellText.indexOf(sSearchTerm.toLowerCase()) >= 0) 
        {    
            $(this).parent().show();
            iCounter++;
            return true;
        } 
    });
    if(iCounter == 0)
    {
        $('#lblNoRecords').css('display','');
    }
    e.preventDefault();
})
})
</script>

在my.ascx中:

<asp:TextBox ID="txtSearch" runat="server" ClientIDMode="Static"
                meta:resourcekey="txtSearchResource1"></asp:TextBox>

<asp:Button ID="btnSubmit"  runat="server" ClientIDMode="Static" CssClass ="ButtonNormal" Text="Search" 
                meta:resourcekey="btnSubmitResource1" /> 

<asp:Label ID="lblNoRecords" runat="server" ClientIDMode="Static" 
                meta:resourcekey="lblNoRecordsResource1"></asp:Label>
<gridview ..........
......

但是当我点击btnSubmit时没有任何反应。请帮忙。

1 个答案:

答案 0 :(得分:0)

尝试从以下网址替换jQuery选择器的实例:

 $("#GridView1 tr:has(td)")

 $("#<%= GridView1.ClientID %> tr:has(td)")