JQuery - проверка строки таблицы пейджера gridview

Я реализовал сетку с привязкой к источнику данных на своей странице aspx и добавил следующий jquery для реализации нескольких изменений, когда пользователь наводит курсор на строку. Проблема в том, что jquery также вступает в игру, когда вы наводите курсор мыши на нижнюю строку пейджера, например, чтобы изменить страницу сетки и т. Д. У меня была работа с этим, кроме случая, когда на экране нет строки пейджера. Я также пытался найти класс 'gridheader', подсчитывать строки и т. Д., Но ни один из них, похоже, не справился с работой.

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");
            }
            );

}

});

Любая помощь будет оценена!

Спасибо

2 ответа

Вы можете поместить специальный CssClass в строки пейджера следующим образом:

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

Затем вы сможете использовать это для фильтрации строк.

Спасибо за помощь.. не смог заставить ваше предложение работать, поэтому добавил класс css в строки данных и изменил селектор, чтобы найти класс:

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

$("*[id$='gridResults']").find(".dataRow")
Другие вопросы по тегам