簡體   English   中英

轉發器,Linkbutton和ModalPopupExtender無需回發

[英]Repeater, Linkbutton and ModalPopupExtender without postback

這是我的問題。

我有一個中繼器。 里面有很多文本框。 在最右邊的列中,有一個鏈接按鈕。 單擊此鏈接按鈕后,將顯示一個modalpopupextender,它將顯示所選行的詳細記錄。

我已經使其工作正常,但速度很慢,因為當您單擊鏈接按鈕時,它將刷新整個頁面。

我不想重新加載中繼器,因為這是非常慢的部分。

我嘗試添加一個updatePanel(位於updatePanel內的中繼器),但是由於中繼器位於updatePanel內部,因此它仍將重新加載中繼器。

所以問題是,當單擊鏈接按鈕時,我該怎么辦?它不會重新加載中繼器...

任何想法將不勝感激。 順便說一下,我正在用.net 2.0,c#開發它

Try this one.

<asp1:UpdatePanel ID="updatepanel4" runat="server" >
<ContentTemplate>
 <table id="AssignedRequest" class="tablecont" runat="server" style="width: 900px;" >
 <tr>
   <td>
  <div style=" display:block; width:900px; height:350px;overflow:scroll; ">
    <asp:Repeater runat="server" ID="RepeaterRequest"> 
     <HeaderTemplate >
     <table class="list_table" border="0" cellpadding="0" cellspacing="0" width="100%">
    <tr>
        <th>Name</th>
        <th></th>
    </tr>
</HeaderTemplate>
<ItemTemplate>
  <tr>
    <td><%# Eval("NAME")%></td>

<td><a onclick="window.open(this.href,this.target,'directories=no,
     menubar=no,resizable=no,scrollbars=1,
     status=no,toolbar=no,addressbar=no,fullscreen=yes'); 
     return false;" href="View.aspx?name=<%#Eval("NAME")%>">View</a></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>

</FooterTemplate>
</asp:Repeater>
</div>
</td>
 </tr>
</table>
 </ContentTemplate>
</asp1:UpdatePanel>

在后面的代碼中注冊,此代碼是您在綁定之后添加的代碼,例如在Page_Load中(您也可以使用ItemDataBound或ItemCreated委托)。

        rpt.DataBind();
        foreach (RepeaterItem ri in rpt.Items)
        {
            if (ri.ItemType == ListItemType.Item || ri.ItemType == ListItemType.AlternatingItem)
            {
                LinkButton lnkButton1 = (LinkButton)ri.FindControl("lnkButton1");
                ScriptManager1.RegisterAsyncPostBackControl(lnkButton1);
            }
        }

為什么不去做類似主子關系的事情呢? 您是否需要與顯示給用戶的子數據進一步交互? 如果是這樣,請指定性質。

假設您要顯示的子數據是簡單的數據,旨在將相關數據簡單地傳達給用戶,則可以使用jQuery和中繼器的組合來實現您的目標。

您將顯示第一個轉發器主數據。 在中繼器的每一行上,您在此處顯示一個顯示按鈕。 您在這里不需要鏈接按鈕; 只需一個簡單的錨即可。 您必須在其中編寫js才能切換正確的子數據。

所有子數據也應重復。 但一開始沒有顯示給用戶。 僅應顯示該特定子項-通過在主中繼器上單擊的顯示錨點適當觸發。 其余都是js / css。

下面是一個演示該概念的示例項目的鏈接。

http://www.coderun.com/ide/?w=2ObqOpjZz0qt7OrXYmmxwA

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM