Drop Down List (in Update Panel) causing FULL PostBack!

前端 未结 11 1757
我在风中等你
我在风中等你 2020-12-10 05:13

I have a problem with my AJAX and ASP.NET 3.5 :( Problem is really weird, as I\'m using the same thing on different page and it works fine in there, but on this specific pag

相关标签:
11条回答
  • 2020-12-10 05:40

    Setting the AutoPostBack attribute to true should be enough to cause a partial postback but it's not what happens and a full postback is triggered instead as you correctly described.

    The following workaround works for me:

    1. Drop the AutoPostBack attribute.
    2. Trigger the postback using the "onchange" client side event.

    This is how the original DropDownList should look like:

    <asp:DropDownList ID="ddlNewService_PortTelco" runat="server" Width="250" CssClass="dropdown" OnChange="javascript:WebForm_DoPostBackWithOptions(new WebForm_PostBackOptions(this.name, '', true, '', '', false, true))" OnSelectedIndexChanged="Provision_PortedTelcoChanged"></asp:DropDownList>
    

    For more details regarding the WebForm_PostBackOptions parameters see below:

    function WebForm_PostBackOptions(eventTarget, eventArgument, validation, validationGroup, actionUrl, trackFocus, clientSubmit)
    

    http://msdn.microsoft.com/en-us/library/system.web.ui.postbackoptions_members(v=VS.90).aspx

    0 讨论(0)
  • 2020-12-10 05:41

    One alternative to fix this issue is:

    Declare the library

    using AjaxControlToolkit;
    

    Then you can do something on these lines

    private void InitControl()
    {        
                //FIX - DROP DOWN
                ToolkitScriptManager scrManager = (ToolkitScriptManager)Page.Master.Controls[0].Controls[0].FindControl("manScript");
                scrManager.RegisterAsyncPostBackControl(ddlNewService_PortTelco);
    }
    
    0 讨论(0)
  • 2020-12-10 05:44

    Me having the same problem...

    CHECK your WEB.CONFIG

    <xhtmlConformance mode="Legacy"/>
    

    for this line.. and JUST REMOVE IT!!

    Worked for me. Thanks http://andrew-murphy.co.uk/?p=152

    0 讨论(0)
  • 2020-12-10 05:50

    i had the same problem... altho it's not showing in the copied code here, check to make sure you don't have any controls with ClientIDMode=Static within the updatepanel .... make them inherit

    at least any controls that may trigger a postback

    0 讨论(0)
  • 2020-12-10 05:50

    Set AutoID value to ClientIDMode property. It worked for me. I have had different behaviour in different browsers (i.e. Google chrome and Firefox).

    0 讨论(0)
  • I had this problem. My Dropdownlist was inside of an HTML table and I had my Update Panel wrapped around two individual rows. I fixed the problem by wrapping the Update Panel around the entire table rather than just the two rows.

    0 讨论(0)
提交回复
热议问题