jQuery щелкните строку сетки в главной странице - PullRequest
0 голосов
/ 03 апреля 2011

Я пытался выяснить, как позволить пользователю щелкнуть строку в виде сетки на главной странице.В конечном счете, я хочу, чтобы пользователь был перенаправлен на другую страницу со значениями из таблицы вида (столбец скрытого поля), которые будут значением строки запроса на странице, перенаправленной на.

А на данный момент я могу добраться только до самого вида сетки.Я не могу получить строку или ячейку из таблицы.

    <script type="text/javascript">
    $(document).ready(function () {
        $('[id$=LeagueGV]').click(function() { alert('gridview  clicked'); });
        //window.location = "/League_Admin.aspx?LID=" + $(this).find('LeagueHidden').value();
        //});
    });
</script>

<asp:GridView runat="server" ID="LeagueGV" DataKeyNames="LeagueID" >
            <Columns>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:HiddenField runat="server" ID="LeagueHidden" Value='<%# Eval("LeagueID") %>' />
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:TemplateField>
                    <ItemTemplate>
                        <asp:Label runat="server" ID="LeagueIDLabel" Text='<%#Eval("LeagueID") %>'></asp:Label>
                    </ItemTemplate>
                </asp:TemplateField>
                <asp:BoundField DataField="LeagueName" HeaderText="League Name" />
            </Columns>
        </asp:GridView>

1 Ответ

2 голосов
/ 03 апреля 2011

Есть пара проблем с тем, что у вас есть. Прежде всего, ваш GridView идентификатор не будет отображаться как «LeagueGV», а скрытое поле не будет «LeagueHidden». Он будет искажен, чтобы быть частью цепочки идентификаторов родительского NamingContainer.

Во-вторых, синтаксис jQuery для использования идентификаторов может быть таким простым, как $('#yourId'). Используемый синтаксис старый.

В-третьих, я бы не рекомендовал добавлять событие щелчка к table или tr. Многие пользователи не ожидают такого поведения и могут сбить с толку.

Если вы не надеетесь на ненавязчивый Javascript, мое первое предложение будет иметь HyperLinkField вместо TemplateField, тогда вы можете переопределить событие OnDataBound для GridView и добавить onclick Атрибут ссылки, когда она отображается, включает в себя идентификатор Лиги.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...