2016-02-16 5 views
0

Я ниже design code, содержащего updatepanel к gridview и buttons, как показано ниже -UpdatePanel AsyncPostBackTrigger делает Postback

<asp:ScriptManager ID="scrptmanager" runat="server"></asp:ScriptManager> 
    <div> 
     <asp:HiddenField ID="hdnSortValue" runat="server" /> 
    </div> 
    <div class="current-btns" style="float: left !important;"> 
     <div id="divFitnessSortBy" runat="server" class="fit-sort"> 
      <table> 
       <tr> 
        <td> 
         <b>Sort by :</b> 
        </td> 
        <td> 
         <asp:Button ID="btnMostRecent" Text="Most Recent" class="button action sortcomments" 
          runat="server" OnCommand="btnMostRecent_Click" CommandArgument="date" /> 
        </td> 
        <td> 
         <asp:Button ID="btnMostViewed" Text="Most Viewed" class="Comments" runat="server" 
          OnCommand="btnMostViewed_Click" CommandArgument="views" /> 
        </td> 
       </tr> 
      </table> 
     </div> 
     <div class="clear"> 
     </div> 
    </div> 
    <div class="hr"> 
    </div> 
    <div class="BlogsPostHolderDiv" id="divPagination"> 
    <asp:UpdatePanel ID="updtpanel" runat="server" UpdateMode="Conditional"> 
    <ContentTemplate> 
     <asp:GridView ID="gvBlogsPost" runat="server" DataKeyNames="PostID" AutoGenerateColumns="False" 
      AllowPaging="false" Width="100%" OnRowDataBound="gvBlogsPost_Bound" GridLines="None"> 
      <Columns> 
       <asp:TemplateField> 
        <ItemTemplate> 
         <div class="current-articles"> 
          <div class="current-thumb"> 
           <a id="lnkThumbnail" runat="server" rel="nofollow"> 
            <asp:Image ID="imgThumbnail" runat="server" Height="135px" Width="186px" /> 
           </a> 
          </div> 
          <div class="current-list"> 
           <h2> 
            <a id="lnkArticle" runat="server"> 
             <%# DataBinder.Eval(Container.DataItem, "Subject")%></a> 
           </h2> 
           <div class="views-comments"> 
            <h5> 
             <asp:Label runat="server" ID="lblNewsletterDate" ForeColor="#808080"><%# DataBinder.Eval(Container.DataItem, "PostDate")%></asp:Label> 
             <span class="gray">|</span> <span id="spnViews" runat="server"><span> 
              <%#Convert.ToInt64(DataBinder.Eval(Container.DataItem, "TotalViews")).ToString("#,#")%> 
              Views </span></span> 
            </h5> 
           </div> 
           <asp:Label ID="lblShortDescription" runat="server"><%#DataBinder.Eval (Container.DataItem, "Body")%> </asp:Label> 
          </div> 
          <div class="clear"> 
          </div> 
         </div> 
         <div class="hr"> 
         </div> 
        </ItemTemplate> 
       </asp:TemplateField> 
      </Columns> 

     </asp:GridView> 
     </ContentTemplate> 
     <Triggers> 
     <asp:AsyncPostBackTrigger ControlID="btnMostRecent" EventName="Click" /> 
     <asp:AsyncPostBackTrigger ControlID="btnMostViewed" EventName="Click" /> 
     </Triggers> 
     </asp:UpdatePanel>    
    <input type="hidden" id="hdnLastArticle" value="10" /> 

Когда я click на btnMostRecent или btnMostViewed страница делает postback, не должно быть так ... я что-то упустил?

Ожидаемое - Когда я click на любом из данного button только gvBlogsPostgridview должны быть обновлены без whole page postback

Помощь и спасибо заранее ...!

ответ

0

Все, что вам нужно сделать, это убедиться, что триггеры находятся в одном и том же контейнере имен.

В соответствии с MSDN:

Контроль, что ссылки управления AsyncPostBackTrigger должны быть в том же контейнере именования в качестве панели обновления, для которых она является триггер . Триггеры, которые основаны на элементах управления в других именованиях контейнеров , не поддерживаются.

 Смежные вопросы

  • Нет связанных вопросов^_^