【问题标题】:tools inside updatepanel causing full postback asp.net c#updatepanel 中的工具导致完整的回发 asp.net c#
【发布时间】:2013-04-22 08:47:30
【问题描述】:

我的在线订单有问题,我已将所有下拉列表和按钮都放在更新面板中,但是当我在下拉列表中选择某些内容或按下按钮时,整个页面回发...请帮助我!这是我的代码:`

                            <strong><asp:ImageButton 
                                ID="btnExcel0" runat="server" AlternateText="Export to Excel" Height="30px" 
                                ImageUrl="/images/excel_icon1.png" onclick="btnExcel_Click" TabIndex="14" />
                            </strong>&nbsp; &nbsp;&nbsp;
                             <input type="image" runat ="server" id ="Image1" src ="/images/images.jpg" onclick="javascript:CallPrint('divPivot1')" title="Print" />

                            <br />
                            <div id= "divPivot1">
                            <asp:GridView ID="OrderGridView" runat="server" AllowPaging="True" 
                                BorderStyle="None" CellPadding="3" DataKeyNames="Article" 
                                EmptyDataText="&quot;No product added...&quot;" Font-Size="Small" HorizontalAlign="Left" 
                                OnPageIndexChanging="OrderGridView_PageIndexChanging" PageSize="20" 
                                TabIndex="15" Width="866px" BackColor="White" BorderColor="#CCCCCC" 
                                BorderWidth="1px">
                                <FooterStyle BackColor="White" ForeColor="#336699" />
                                <HeaderStyle BackColor="#336699" Font-Bold="True" ForeColor="White" />
                                <PagerSettings FirstPageText="First" LastPageText="Last" />
                                <PagerStyle BackColor="White" ForeColor="#336699" HorizontalAlign="Left" />
                                <RowStyle ForeColor="#336699" Font-Size="Small" />
                                <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
                                <SortedAscendingCellStyle BackColor="#F1F1F1" />
                                <SortedAscendingHeaderStyle BackColor="#007DBB" />
                                <SortedDescendingCellStyle BackColor="#CAC9C9" />
                                <SortedDescendingHeaderStyle BackColor="#00547E" />
                                <Columns>
                                    <asp:TemplateField HeaderText="Delete" ItemStyle-HorizontalAlign="Center" >
                                    <ItemTemplate>
                                        <asp:CheckBox ID="CheckBox1" runat="server" />
                                    </ItemTemplate>
                                    </asp:TemplateField>
                                     <asp:TemplateField HeaderText="Update Quantity" ItemStyle-HorizontalAlign="Center" ItemStyle-Width="80">
                                    <ItemTemplate>
                                        <asp:TextBox ID="TextBox" runat="server" Width="90" />
                                    </ItemTemplate>
                                    </asp:TemplateField>
                                </Columns>
                            </asp:GridView>
        br />
                                <br />
                               <asp:Label ID="lblsum" runat="server" CssClass="style19" Text="Sum Total"></asp:Label>
                            <br />
                               <asp:Label ID="sum" runat="server" CssClass="style19"></asp:Label>
                            <br />
                            </div>
                            <strong><asp:ImageButton ID="btnDelete" runat="server" Height="28px" 
                                    ImageUrl="/images/bt_Delete.jpg" onclick="btnDelete_Click" 
                                    OnClientClick="return DeleteConfirmation();" TabIndex="13" Width="106px" />
                                </strong>&nbsp;&nbsp;&nbsp; &nbsp;<asp:ImageButton ID="btnUpdate" 
                                    runat="server" Height="28px" ImageUrl="/images/btUpdate.jpg" Width="106px" 
                                    OnClientClick="return UpdateConfirmation();" 
                                    onclick="btnUpdate_Click" />
                            <asp:TextBox ID="username" runat="server" Height="16px" Visible="False" 
                                    Width="128px"></asp:TextBox>
                            <br />

                            <asp:Label ID="Label16" runat="server" Text="Notes:" ForeColor="#336699"></asp:Label>

                            <br />
                            <asp:TextBox ID="TextBox5" runat="server" Height="101px" TabIndex="10" 
                                TextMode="MultiLine" Width="860px"></asp:TextBox>
                            <br />
                            &nbsp;&nbsp;<asp:ImageButton 
                                ID="btnSend" runat="server" ImageUrl="/images/mail2.jpg" 
                                onclick="Button1_Click"  AlternateText="Send your Order"
                                TabIndex="11" Height="75px" Width="90px"/><strong><asp:ImageButton 
                                ID="ImageButton1" runat="server" Height="66px" 
                                ImageUrl="/images/logout.png"  Width="56px" 
                                 onclick="ImageButton1_Click" />
                            </strong>
                            <br />
                            <strong>
                            <asp:Label ID="Label18" runat="server" style="color: #336699" 
                                Text="*Delete Product from List: Check the products which you want to remove from your list and press the delete button."></asp:Label>
                            </strong>
                    </ContentTemplate>
                    <Triggers>
                        <asp:PostBackTrigger ControlID="btnExcel0" />
                        <asp:AsyncPostBackTrigger ControlID="ImageButton1" />
                        <asp:AsyncPostBackTrigger ControlID="code" EventName="SelectedIndexChanged" />
                        <asp:AsyncPostBackTrigger ControlID="type" EventName="SelectedIndexChanged" />
                        <asp:AsyncPostBackTrigger ControlID="p" EventName="SelectedIndexChanged" />
                        <asp:AsyncPostBackTrigger ControlID="dem" EventName="SelectedIndexChanged" />
                        <asp:AsyncPostBackTrigger ControlID="quant" EventName="TextChanged" />
                        <asp:AsyncPostBackTrigger ControlID="btnAdd" />
                        <asp:AsyncPostBackTrigger ControlID="btnDelete" />
                        <asp:AsyncPostBackTrigger ControlID="btnUpdate" />
                        <asp:AsyncPostBackTrigger ControlID="btnSend" />
                    </Triggers>
                </asp:UpdatePanel>`

【问题讨论】:

    标签: c# asp.net triggers postback html-select


    【解决方案1】:

    我看不到您的下拉列表的代码,我曾经遇到过同样的问题。 我设置下拉列表 AutoPostBack= True 并在选定的索引中定义一个方法已更改。 因此,请确保您没有这样做并上传您的完整代码。

    【讨论】:

    • 这是我的下拉列表之一
    • 我不知道为什么,但我无法上传我的完整代码......我在更新面板中有 4 个下拉列表、4 个按钮和一个网格视图。
    • 正如我所说,您的下拉菜单包含两件事,即 AutoPostBack = true 和所选索引上的事件已更改,因此您需要删除它们以避免回发您是否在所选索引内执行任何操作更改下拉列表的事件??
    • protected void code_SelectedIndexChanged(object sender, EventArgs e) { p.Items.Clear(); p.Items.Add(new ListItem("--选择 P--")); type.AppendDataBoundItems = true; OrdersDataContext db = new OrdersDataContext(); var selectType = (from t in db.typeTs where (t.codeId == Convert.ToInt32(code.SelectedItem.Value)) select t).OrderBy(t => t.type); type.DataSource = 选择类型; type.DataTextField = "类型";
    • type.DataValueField = "id";类型.DataBind(); if (type.Items.Count > 2) { type.Enabled = true; } else { type.Enabled = false; dem.Enabled = 假; } }
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-30
    • 2014-07-30
    • 2012-01-30
    • 1970-01-01
    • 2015-07-21
    相关资源
    最近更新 更多