[使用c#的页面加载问题更新面板asp.net

问题描述 投票:0回答:1

先生,我正在制作一个论坛项目,正在使用Technology asp.net c#和SQL数据库,其中网站网址是https://www.indiabix.info/

在主页中,我正在使用Ajax扩展(更新面板)来防止页面加载,但是当我单击“加载更多”时,会触发页面加载问题,所以先生,如何防止按钮在更新面板中单击时加载页面给我的代码

Default.aspx

<div class="col-md-8 col-sm-12">
              <asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
              <asp:UpdatePanel ID="UpdatePanel1" runat="server">

                  <ContentTemplate>

            <div class="listing">
              <!-- Question Area Panel -->
                
                      

              <div class="listing-area">
                           <asp:Repeater ID="rptrecent_question" runat="server"> 
                           <ItemTemplate>
                <!-- Question Listing -->
                <div class="listing-grid ">
                  <div class="row">
                    <div class="col-md-2 col-sm-2 col-xs-12 hidden-xs">
                      <a data-toggle="tooltip" data-placement="bottom" data-original-title="<%#Eval("name_") %>-<%#Eval("designation_") %>" href="#"><img alt="<%#Eval("name_") %>" class="correct img-responsive center-block" src="/<%#Eval("profile_pic") %>">
                      </a>
                      <span class="tick"><i class="fa fa-check" aria-hidden="true"></i></span></div>
                    <div class="col-md-7 col-sm-8  col-xs-12">
                      <h3><a  href="question/<%#Eval("question_name") %>"> <asp:Literal ID="gkdlg" Text='<%#Bind("question_title") %>'  runat="server"></asp:Literal></a></h3>
                      <div class="listing-meta">
                       <span><i class="fa fa-clock-o" aria-hidden="true"></i><time class="timeago" datetime="<%#Eval("date_time") %>" ></time></span>

                          <span><i class="fa fa fa-eye" aria-hidden="true"></i> <asp:Literal ID="lblvisitcount"   runat="server"></asp:Literal> Views</span>
                          <asp:HiddenField ID="hfid_question" Value='<%#Bind("Id") %>' runat="server" />
                      </div>

                    </div>
                    <div class="col-md-3 col-sm-2 col-xs-12">
                      <ul class="question-statistic">

                       <li class="active">
                          <a data-toggle="tooltip" data-placement="bottom" data-original-title="Answers" title="Answers"><span>
                              <asp:Literal ID="ltranswer" runat="server"></asp:Literal></span></a>
                        </li>
                        <li>
                          <a data-toggle="tooltip" data-placement="bottom" data-original-title="Upvotes" title="Upvotes"><span>
                              <asp:Literal ID="ltrupvote" runat="server"></asp:Literal></span></a
                        </li>

                           <li>
                          <a data-toggle="tooltip" data-placement="bottom" data-original-title="Downvotes" title="Downvotes"><span>
                              <asp:Literal ID="ltrdownvote" runat="server"></asp:Literal></span></a
                        </li>
                      </ul>
                    </div>

                    <div class="col-md-10 col-sm-10  col-xs-12">
                      <p><asp:Literal ID="Literal1" Text='<%#Bind("question_details") %>'  runat="server"></asp:Literal></p>
                      <div class="pull-right tagcloud">
                        <a href="#"><%#Eval("cat_name") %></a>
                     

                      </div>
                    </div>

                  </div>
                </div>
                <!-- Question Listing End -->
    
                   </ItemTemplate>
                  </asp:Repeater>

              </div>
             
    
               
        
            <div class="text-center clearfix">
                  <asp:UpdateProgress ID="updateprogress" runat="server" ClientIDMode="Static" DisplayAfter="10">
               <ProgressTemplate>
                   <img src="images/preloader.gif" alt="Load More Question" />

               </ProgressTemplate>

           </asp:UpdateProgress>
                
                   <asp:Button ID="btnloadquestion" CssClass="btn btn-primary btn-lg" runat="server" Text="Load More Question" OnClick="btnloadquestion_Click" />
              </div>
              <!-- Pagination View More -->
         
              <!-- Pagination View More End -->

              <!-- Question Area Panel End -->
            </div>

                      <asp:Timer ID="Timer1" runat="server" Interval="1000" OnTick="Timer1_Tick"></asp:Timer>
              
                  </ContentTemplate>
              </asp:UpdatePanel>
          </div>

Default.aspx.cs

protected void Timer1_Tick(object sender, EventArgs e)
    {
        bindrptrecentquestion(Convert.ToInt32(ViewState["num"]));
        countpost();
    }
    
protected void btnloadquestion_Click(object sender, EventArgs e)
     {
         int finalsize = Convert.ToInt32(ViewState["num"]) + 2;
         bindrptrecentquestion(finalsize);
         ViewState["num"] = finalsize;
         countpost();
     }

先生,请为我解决感谢和问候Sachin Srivastava

asp.net asp.net-ajax
1个回答
0
投票

page_load事件将在调用回发到服务器时始终执行。当button_click发生回发时,将导致执行page_load事件,此后在页面生命周期中的某个时间,将执行button_click事件。

Updatepanel阻止Web客户端执行“完全重新加载”。使用ajax,它“隐藏”服务器和客户端之间的通信,并且仅替换页面中需要更新的部分-Updatepanel中的内容。

有关页面生命周期的更多信息,请参见MSDN documentation。>>

© www.soinside.com 2019 - 2024. All rights reserved.