2011-04-07 43 views
0

我已经在我的aspx页面上实现了一个数据源绑定的gridview,并且添加了下面的jquery,当用户将鼠标悬停在一行上时,实现了几个更改。问题是,当你将鼠标悬停在最下面的分页器行上时,jquery也会起作用,例如更改网格页面等等。除了在屏幕上没有分页器行的情况下,我还可以使用下面的内容。我也试过寻找'gridheader'类,计算行等,但他们似乎没有做这项工作。JQuery - 检查gridview页面表行

function PageLoaddCallback(sender, args) { 
    $("*[id$='gridResults'] tr:not(tr:last-child)").unbind(); 
    $("*[id$='gridResults'] tr:not(tr:last-child)").filter(function() { 
     return $('td', this).length && !$('table', this).length 
    }).hover(
      function() { 
       var totalRows = $("#<%=gridResults.ClientID %> tr").length; 
       m_bgcolour = $(this).css("background-color"); 
       var _img = $(this).find("*[id$='hdnField']").val(); 
       var _name = $(this).find("*[id$='hdnName']").val(); 
       if ((_img == null) || (_img == "")) { 
        var src = "../../Images/Resources/NoSignature.jpg"; 
        _name = "Unknown"; 
       } 
       else { 
        var src = "GetImage.axd?id=" + _img; 
       } 

       $("#largeImg").attr("src", src); 
       $(this).css({ background: "#c4ffc4" }); 
       $("#lbl").html(_name); 
      }, 
      function() { 
       var src = "../../Images/Resources/sample.jpg"; 
       $("#largeImg").attr("src", src); 
       $(this).css({ background: m_bgcolour }); 
       $("#lbl").html("Sample"); 
      } 
      ); 

} 

});

任何帮助将不胜感激!

感谢

回答

0

你可以把一个特殊的CssClass在寻呼机行,像这样:

<asp:GridView ...> 
    <PagerStyle cssClass="pagerRow" /> 
</asp:GridView> 

然后您应该能够用它来过滤掉行。

0

感谢您的帮助..不能让你的建议工作,所以增加了一个CSS类的数据行和更改的选择,以找到类:

<asp:GridView ID="gridResults" runat="server" AutoGenerateColumns="false" RowStyle-CssClass="dataRow"> 

$("*[id$='gridResults']").find(".dataRow")