Gridview正在消失

Gridview Disappearing jQuery ASP.NET

本文关键字:消失 Gridview      更新时间:2023-09-26

我正在创建一个允许使用ASP.NET编辑数据库表的web应用程序。

我已经得到了应用程序中的所有功能,并且一切都运行良好。然而,现在的规范已经改变,我需要有多个gridview的显示不同的数据库表。因此,我已经实现了jquery和一个下拉菜单,它将只显示某些div的值取决于下拉菜单中选择的值。

这很好,我只显示gridview我想根据我所选择的值。虽然,当试图编辑网格视图,网格视图消失;这只发生在实现jquery之后。

当我在下拉菜单中选择不同的选项,然后选择我想要的选项时,我可以再次显示网格视图。

这很奇怪,因为编辑按钮不应该影响我在下拉菜单上选择的值。

有人能帮忙吗?

jQuery:

<script type="text/javascript">
        $(document).ready(function () {
            $('.group').hide();
            $('#no_option_selected').show();
            $('#DropDownList1').change(function () {
                $('.group').hide();
                $('#' + $(this).val()).show();
            })
        });
</script>

在。net/c#中做所有事情可能比在ASP中更容易。. NET/jQuery的混合体。将下拉列表转换为服务器控件并定义OnSelectedIndexChanged。(别忘了将Autopostback设置为True)

<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" 
    OnSelectedIndexchanged="Gridview_ShowHide">
</asp:DropDownList>
然后在你的代码后面:
public void Gridview_ShowHide(Object o, EventArgs e) 
{
    gv1.Visible = gv2.Visible = gv3.Visible = gv4.Visible = false;
    switch (DropDownList1.SelectedValue)
    {
         case 'gv1':
              gv1.Visible = True;
              break;
         case 'gv2':
              gv2.Visible = True;
              break;
         case 'gv3':
              gv3.Visible = True
              break;
         case 'gv4':
              gv4.Visible = True;
              break;
    }
}

通过这样做,ASP。. NET的ViewState将跟踪哪些gridview是可见的,哪些是不可见的,甚至在回发之后。