使用jQuery获取GridView单元格的值而无需回发

时间:2018-03-16 06:59:41

标签: javascript jquery asp.net

我有一个aspx页面,它有这样的网格视图:

<div id="output_container" class="container-fluid">
    <asp:GridView ID="EmployeeGridView" runat="server" CellPadding="4" ForeColor="#333333" GridLines="None" AutoGenerateColumns="false">
        <Columns>
            <asp:TemplateField HeaderText="Serial No.">
                <ItemTemplate>
                    <%#Container.DataItemIndex + 1 %>
                </ItemTemplate>
            </asp:TemplateField>
            <asp:BoundField DataField="Employee_ID" HeaderText="Employee ID" />
            <asp:BoundField DataField="IsManager" ItemStyle-CssClass="hidden" />
            <asp:TemplateField>
                <ItemTemplate>
                    <asp:ImageButton ID="btnDelete" ImageUrl="~/Images/Delete.png" CssClass="img-thumbnail" runat="server" Height="20" Width="20" ImageAlign="AbsMiddle" ToolTip="Delete" />
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>
</div>

此GridView由代码隐藏中的对象列表填充,这些对象将值分配给相应的列。

现在我需要编写一些jquery代码来检测 btnDelete 的click事件并检索该行的 isManager 值,这是后端的布尔数据类型并且在视图中对用户隐藏。如果isManager值为true,则会弹出一个确认对话框。

有人可以帮我解决相同的代码吗?我需要检测单击btnDelete的行,并获取该行的isManager值并使用该值显示确认。

1 个答案:

答案 0 :(得分:0)

您可以将jQuery单击绑定到ImageButton,并通过在该行中搜索正确的类来从行中获取值。

<script type="text/javascript">
    $("#<%= EmployeeGridView.ClientID %> .img-thumbnail").click(function () {
        var IsManager = $(this).closest('tr').find('.hidden').html();
        alert(IsManager);
    });
</script>

然而,由于它是一个按钮,将执行PostBack。因此,如果您想阻止将OnClientClick="return false"添加到按钮。