刷新期间UpdatePanel未修复

时间:2013-01-04 07:48:55

标签: c# asp.net ajax asp.net-ajax updatepanel

我有整个页面的更新面板。当我单击链接时,会出现相应的更新面板并显示网格视图。用户更新网格并单击“提交”按钮后,网格视图将使用最新数据进行更新。但问题是面板尺寸增加并且网格已经移向页面底部。

 <tr>
  <td>  
   <asp:UpdatePanel ID="updatePanelMenu" runat="server">   
                 <ContentTemplate>
  <table>            
    <tr>

<asp:Panel ID="pnlNeedApproval" Visible="false" runat="server" Height="480px" Width="800px" >
    <table border="0" cellpadding="0" cellspacing="0" width="100%">
        <tr>
            <td style="width: 665px">
                <asp:UpdatePanel ID="updatePanelApproval" runat="server">
                  <ContentTemplate>
                     <table class="EditTemplate" width="100%">
                        <tr>
                            <td colspan="6" align="center">
                                <div id="Div9" style="width:800px;HEIGHT:450px">
                                    <igtbl:UltraWebGrid ID="uwgApproval" runat="server" 
                                        DisplayLayout-AutoGenerateColumns="false" Width="800px" 
                                        DataKeyField="Approval_log_ID" OnInitializeRow="uwgApproval_InitializeRow">
                                        <Bands>
                                            <igtbl:UltraGridBand AllowUpdate="Yes"
                                                FixedHeaderIndicator="Button"  AllowRowNumbering="Continuous"  
                                                BaseTableName="Approval_log" DataKeyField="Approval_log_ID" SortingAlgorithm="QuickSort">
                                                <Columns>
                                                    <igtbl:UltraGridColumn BaseColumnName="Approval_log_ID"  Hidden="True" Key="Approval_log_ID" DataType="System.Int32">
                                                        <Header Caption="Approval_log_ID"></Header>
                                                    </igtbl:UltraGridColumn>                                                  
                                                    <igtbl:TemplatedColumn AllowUpdate="Yes" Type="DropDownList" BaseColumnName="Approval_Status"  Key="Approval_Status" >
                                                        <HeaderTemplate>
                                                            <div nowrap>Approve/Reject</div>
                                                        </HeaderTemplate>
                                                        <CellTemplate>
                                                           <asp:DropDownList ID="cboApprovalStatus" Width="110px" runat="server" onchange="SetApprovalStatus(this);">
                                                               <asp:ListItem  value="2"><--Select One--></asp:ListItem>
                                                                <asp:ListItem  value="0">Reject</asp:ListItem>
                                                                <asp:ListItem  value="1">Approve</asp:ListItem>
                                                            </asp:DropDownList>
                                                        </CellTemplate>
                                                     </igtbl:TemplatedColumn>  
                                                     <igtbl:UltraGridColumn BaseColumnName="APPROVAL_TYPE" Key="APPROVAL_TYPE" Hidden="true">
                                                        <Header Caption="Type">
                                                            <RowLayoutColumnInfo OriginX="1" />
                                                        </Header>
                                                        <Footer>
                                                            <RowLayoutColumnInfo OriginX="1" />
                                                        </Footer>
                                                    </igtbl:UltraGridColumn>
                                                    <igtbl:UltraGridColumn BaseColumnName="Assigned_By" Key="Assigned_By" Hidden="true">
                                                        <Header Caption="Assigned_By"></Header>
                                                    </igtbl:UltraGridColumn>
                                                    <igtbl:UltraGridColumn BaseColumnName="CommonKey" Key="CommonKey" Hidden="true">
                                                        <Header Caption="CommonKey"></Header>
                                                    </igtbl:UltraGridColumn>
                                                </Columns>
                                            </igtbl:UltraGridBand>
                                        </Bands>
                                    </igtbl:UltraWebGrid>
                                </div>
                            </td>
                        </tr>
                       <tr> 
                            <td colspan="6" align="center">
                                <asp:Button ID="btnApprovalSubmit" CssClass="inputbut" OnClick="btnApprovalSubmit_serverclick" runat="server" Text="Submit" ></asp:Button>
                                <asp:Button ID="btnApprovalReset" CssClass="inputbut" OnClick="btnApprovalReset_serverclick" runat="server" Text="Reset"  ></asp:Button> 
                            </td>
                        </tr>
                    </table>
                </ContentTemplate>
                </asp:UpdatePanel> 
            </td>
        </tr>


    </table>
</asp:Panel>

1 个答案:

答案 0 :(得分:0)

我在那段代码上看到你在另一个内部有两个UpdatePanels。这可能会引发问题,一个就足够了 - 外部的UpdatePanel也会更新另一个的内部内容。

最好删除内部UpdatePanel,一般情况下,只使用更多的UpdatePanels来区分某些操作。还要记住,UpdatePanel内部的内容将会发生变化,因此它的内容必须是完整的渲染代码,而不是其中的一部分,例如,不是表的一部分,而是完整的表。