JQuery 数据表过滤器和分页在回发后消失

问题描述 投票:0回答:0

我有一个asp.net页面,页面上有一个gridview控件。 jquery datatables插件应用于gridview控件。加载页面后,网格视图将按预期显示。

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
    <title>JudiSIS MPortal - Cases Fixed Before Me</title>

    <link href="/styles/datatables.min.css" rel="stylesheet" />
    <link href="../styles/datatables.min.css" rel="stylesheet" />
    <link href="../styles/my-alerts.css" rel="stylesheet" />

    <script src="/scripts/jquery-1.11.2.min.js"></script>
    <script src="/scripts/datatables.min.js"></script>
    <script src="../scripts/validation.js"></script>

    <script type="text/javascript">

        $(function () {
            bindDataTable();

            Sys.WebForms.PageRequestManager.getInstance().add_endRequest(bindDataTable);
        });

        function bindDataTable() {
            var myDT = $("[id*=gvFixedCases]").DataTable(
                {
                    bLengthChange: false,
                    lengthMenu: [[10, 20, -1], [10, 20, "All"]],
                    bFilter: true,
                    bSort: false,
                    bPaginate: true,
                    responsive: true,
                    "stateSave": true,
                    "stateDuration": 60 * 10,
                    language: {
                        search: '', /*Empty to remove the label*/
                        searchPlaceholder: 'Search here...'
                    }
                });
        }
    </script>
    <style>
        table.dataTable tbody td {
            padding: 2px 10px;
        }
    </style>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
    <div class="flx">
        <div class="div-lft"></div>
        <div class="div-ctr ">
            <form id="form1" class="pure-form pure-form-stacked" runat="server">
                <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
                <asp:UpdatePanel ID="uPanel" runat="server">
                    <ContentTemplate>
                        <asp:Literal ID="DisMessage" runat="server"></asp:Literal>
                        <fieldset>
                            <h3 style="font-size: large!important; line-height: 5px!important;">Cases Fixed Before My Bench</h3>
                            <hr />
                            <div class="pure-g">
                                <div class="pure-u-1 pure-u-md-1-5">
                                    <label class="pure-input-1">Date of Hearing</label>
                                    <asp:TextBox ID="hdate" runat="server" TextMode="Date"
                                        class="pure-input-1 vNeeded" placeholder="Hearing Date" />
                                </div>
                                <div class="pure-u-1 pure-u-md-1-5">
                                    <div class="pure-u-1 h-in-mob">
                                        <label class="pure-input-1">&nbsp;</label>
                                    </div>
                                    <asp:Button ID="bSubmit" Text="Submit" runat="server"
                                        Style="height: 32px;" OnClientClick="return validateForm()"
                                        CssClass="pure-button pure-button-primary pure-input-1" />
                                </div>
                            </div>
                        </fieldset>

                        <asp:GridView ID="gvFixedCases" runat="server" AutoGenerateColumns="False" DataSourceID="SqlDataSource1" Width="100%">
                            <Columns>
                                <asp:BoundField DataField="AppId" HeaderText="AppId" SortExpression="AppId" Visible="False" />
                                <asp:BoundField DataField="Appeal Number" HeaderText="Appeal Number" ReadOnly="True" SortExpression="Appeal Number" />
                                <asp:BoundField DataField="Assessee Name" HeaderText="Assessee Name" SortExpression="Assessee Name" ReadOnly="True" />
                                <asp:BoundField DataField="AssmtYear" HeaderText="AssmtYear" SortExpression="AssmtYear" />
                                <asp:BoundField DataField="Mem1" HeaderText="Mem1" ReadOnly="True" SortExpression="Mem1">
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:BoundField>
                                <asp:BoundField DataField="Mem2" HeaderText="Mem2" ReadOnly="True" SortExpression="Mem2">
                                    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:BoundField>
                                <asp:ButtonField ButtonType="Button" CommandName="Select" HeaderText="Actions" ShowHeader="True" Text="Details">
                                    <HeaderStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                    <ItemStyle HorizontalAlign="Center" VerticalAlign="Middle" />
                                </asp:ButtonField>
                            </Columns>
                        </asp:GridView>
                    </ContentTemplate>
                </asp:UpdatePanel>
            </form>
        </div>
        <div class="div-lft"></div>
    </div>
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:judisisConnectionString %>" SelectCommand="SELECT top 1 Id as AppId, AppNumber as [Appeal Number], AsseName as [Assessee Name], AssmtYear, Mem1, Mem2 FROM mp_fixed_cases"></asp:SqlDataSource>
</asp:Content>

当我单击详细信息按钮时,数据表过滤器和分页完好无损。但是当我点击提交按钮时,过滤器和分页都消失了。

我哪里做错了?

asp.net gridview datatables
© www.soinside.com 2019 - 2024. All rights reserved.