2013-08-06 22 views
1

我有一個按鈕,如下所示:如何更改按鈕的onclientclick屬性服務器端?

<asp:Button ID="btnNext" runat="server" Font-Bold="true" Text="Next" 
    onclick="btnNext_Click" style="text-align: center" Width="80px" /> 

和RadNumericTextBox:

<telerik:RadNumericTextBox ID="txtTotal5" runat="server" Width="50px" AutoPostBack="true" 
    MinValue="0" ontextchanged="txtTotal5_TextChanged"><NumberFormat DecimalDigits="0" /></telerik:RadNumericTextBox> 

我需要設置基於是否Telerik的的onClientClick財產RadNumericTextBox有文字與否。如果它沒有值,則onClientClick屬性需要如下所示進行設置。如果框中有一個值,我只想進入onclick事件,該事件將其引導至下一個表單。

protected void txtTotal5_TextChanged(object sender, EventArgs e) 
    { 
     if (txtTotal5.Value.ToString() == "") 
     { 
      btnNext.OnClientClick = "javascript: return confirm('Please have the employee complete this form.')"; 
     } 
     else 
     { 
      btnNext.OnClientClick = ""; 
     } 
    } 

現在我已經使用的調試幾次步執行代碼,而值的變化,因爲我所期望的功能範圍內,但即使設置OnClientClick屬性"",箱子還是彈出時按鈕被點擊。該值是不是以某種方式傳遞給客戶端?任何建議,將不勝感激。提前致謝!

+0

中繼器或任何其他環路中的'「?您可以添加屏幕截圖或圖形,頁面元素如何顯示在頁面上以及它們如何工作? – surfmuggle

+0

這很簡單。文本框只在一個表格內,表格在一個更新面板內。而已。 – user2588873

回答

1

您需要的OnClientClick添加到收藏Attributes按鈕,如下所示:

btnNext.Attributes.Add("OnClientClick", "YourJavaScriptFunction();"); 
+0

這不是僅僅做'btnNext.onClientClick =「東西」'? – user2588873

+0

我試着用它來代替,但是即使文本框是空的,我也從來沒有拿到盒子。 – user2588873

0

我已經找到了我的問題的解決方案。我現在離開了上面的功能,但我基本上覆制了if-else到if(IsPostBack)內的我的page_load事件中。

相關問題