2
我正在使用div作爲圖像按鈕,因爲ASP Imagebutton在點擊時導致閃光,無論如何。使用Div Click事件作爲UpdatePanel的觸發器
Div點擊引發一個服務器端事件來綁定網格,它的效果很好。只是整個頁面加載。爲了不這樣做,我試圖把它作爲觸發器。現在
,它給人的錯誤 -
'DIV1正在通過RegisterAsyncPostBackControl或 RegisterPostBackControl reistered必須實現 作INamingContainer,IpostBackDataHandler,或IpostbackEventHandler'
ASPX:
<div id="div1" runat="server" class="search"></div>
<asp:UpdatePanel runat="server" updatemode="conditional">
<Triggers>
<asp:AsyncPostBackTrigger ControlID="divSearch" EventName="Click"/>
</Triggers>
<ContentTemplate>
<asp:gridview....../>
</ContentTemplate>
</asp:UpdatePanel>
C#:
public partial class Home: System.Web.UI.Page, IPostBackEventHandler
{
protected void Page_Load(object sender, EventArgs e)
{
div1.Attributes["onclick"] = ClientScript.
GetPostBackEventReference(this, "div1_Click");
}
protected void div1_Click()
{
bindGrid();
}
public void RaisePostBackEvent(string eventArgument)
{
if (!string.IsNullOrEmpty(eventArgument))
{
if (eventArgument == "div1_Click")
{
div1_Click();
}
}
}
}
什麼辦法,使這項工作?
錯誤說明了這一切:「* InamingContainer,IpostBackDataHandler或IpostbackEventHandler *」。改爲嘗試'asp:panel'。 – Abhitalks
沒有。一樣。它對你有用嗎? – Ruby
這是因爲div標記不支持PostBack事件。 –