2012-03-29 94 views
0

我有一個標籤和更新面板裏面的按鈕,當我嘗試從按鈕點擊標籤獲取值時,我從標籤獲取值,但是當我嘗試將值設置爲標籤,它不會發生,我檢查了JavaScript錯誤,但沒有任何,有沒有人有任何猜測可能是什麼原因。我使用DotNetNuke的,這裏是我的代碼更新UpdatePanel內的標籤

<asp:UpdatePanel ID="updSection6" runat="server"><ContentTemplate> 
<asp:Label ID="lbl" runat="server" /> 
<asp:ImageButton ImageUrl="/images/edit.gif" ID="btnEditSectionStory6" runat="server" OnClick="Clicked" /> 
</ContentTemplate></asp:UpdatePanel> 

和這裏的代碼

protected void Clicked(object sender, EventArgs e) 
{ 
    lbl.Text="Welcome"; 
} 
+0

難道我對你的回答工作? – Seany84 2012-03-30 02:02:01

+0

我已經添加了一些額外的C#代碼到我原來的答案。這應該100%,因爲我已經在我的開發環境中進行了測試。 – Seany84 2012-04-01 21:01:25

+0

對此有何更新? – Seany84 2012-04-04 21:34:21

回答

6

你只需要您的交易之前,添加以下代碼

<Triggers> 
    <asp:PostBackTrigger ControlID="btnEditSectionStory6" /> 
</Triggers> 

</asp:UpdatePanel>

所以你的代碼應該是這樣的:

<asp:UpdatePanel ID="updSection6" runat="server"> 
    <ContentTemplate> 
     <asp:Label ID="lbl" runat="server" /> 
     <asp:ImageButton ImageUrl="/images/edit.gif" ID="btnEditSectionStory6" runat="server" OnClick="Clicked" /> 
    </ContentTemplate> 
    <Triggers> 
     <asp:PostBackTrigger ControlID="btnEditSectionStory6" /> 
    </Triggers> 
</asp:UpdatePanel> 

ASP PostBackTrigger

指定控件和事件,這將導致一個完整的頁面更新(一 整頁刷新)。這個標籤可以被用來強制完全刷新,否則控件會觸發部分呈現。

你可以read moreUpdatePanel's and Triggers here

C#(使用ImageClickEventArgs)

protected void Clicked(object sender, ImageClickEventArgs e) 
    { 
     lbl.Text = "Welcome"; 
    } 
+0

嗨@ Seany84感謝您的回覆,但這也似乎無法正常工作,我添加了觸發器,並且還關聯了控件ID,但仍然沒有獲得標籤內的值 – Abbas 2012-03-30 15:47:08

+0

@Abbas你可以將所有的ASPX和C#你對於那個頁面。 – Seany84 2012-04-01 11:16:58

+0

@Abbas請參閱我已添加到原始響應中的C#代碼。請注意ImageButton使用的EventArgs類型,即ImageClickEventArgs而不是EventArgs。 – Seany84 2012-04-01 20:58:38