سؤال

أنا أستخدم التحكم الأكورديون في MS Ajax. إنه يعمل بشكل جيد بشكل طبيعي ، لكن لا يبدو لي أن أعمل على العمل مع updatePanel. تخطيطي مثل هذا:

    <div id="accordion">
     <div><a href="#">Header1</a></div>

        <div class="acc_content">  
    <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"  >

    <ContentTemplate>
    <asp:button id="btnToggle" runat="server" text="toggle"/>

  //my repeater contents go here. The buttons within the repeater cause a postback, but changes cannot be seen unless the page is manually refreshed (since the updatepanel doesn't refresh)
    </ContentTemplate>

    <Triggers>
    <asp:AsyncPostBackTrigger ControlID="btnToggle" EventName="click" />
    <asp:AsyncPostBackTrigger ControlID="btnAdd" EventName="click" /> //this button is outside the updatepanel


    </ContentTemplate>
    </Triggers>
    </asp:UpdatePanel>
    </div>

    <div><a href="#">Header 2 </a></div>
      <div class="acc_content">  
          Content of the second pane
          </div>



    </div>

تحدث عمليات نشر عند النقر فوق الأزرار ، ولكن لا يتم تحديث أو تحديث UpdatePanel أبدًا. حاولت إضافة UpdatePanel1.Update() في الكود-بيهيند لكل حدث بريدي ، ولكن لا حظ. هل هناك فكرة لماذا يحدث هذا؟

شكرًا

هل كانت مفيدة؟

المحلول

تمكنت من حلها. بالنسبة لأولئك الذين واجهوا مشكلات مماثلة ، أضفت مرجعًا إضافيًا للنص في ScriptManager:

<asp:ScriptReference Name="MicrosoftAjaxWebForms.js" Path="http://ajax.microsoft.com/ajax/beta/0911/MicrosoftAjaxWebForms.js" />
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top