2010-07-08 12 views
2

看起來像「asp:HiddenField」沒有「AutoPostBack」屬性,並且遇到「OnValueChanged」事件問題......我需要調用一個函數(C#),當我填充隱藏的領域,但在我的情況沒有任何反應。我不能使用任何腳本。在沒有腳本的ASP.NET中使用HiddenField調用事件

它可能是什麼? =(謝謝你的任何迴應!

回答

1

我改變我完整的答案,因爲我是完全錯誤的。該死。

我不知道太多關於HiddenField的OnValueChanged事件在此之前(好吧,其實我沒不知道任何事情,大聲笑),但檢查了主題上的MSDN,似乎OnValueChanged事件是爲了讓您檢測字段的值是否在回發之間發生了變化(即用戶將其更改爲他或她的瀏覽器自上次更新值以來)如果在發佈到頁面時更改了HiddenField的值,則不會觸發OnValueChanged事件如果另一方面頁面上的腳本更改了HiddenField的值在下一頁回發之前,它會觸發該事件,所以它是用途在你的情況下對你來說。我之前的建議是使用不可見的TextBox並處理TextChanged事件同樣毫無價值,因爲TextChanged事件只會在用戶改變它時觸發。

所以,這不能回答你的問題,對此感到抱歉。

哦,是的,這裏的MSDN鏈接:HiddenField Web Server Control

+0

我讀過你以前的答案,而且我不認爲你是「完全」錯了,至少它讓我感覺(當時也許我的「完全錯誤的「一個LOL)。其實我也不太瞭解這個控件,但是你的回答(特別是「回傳之間」)幫助我理解爲什麼這麼多的例子使用腳本來填充HiddenField。無論如何,即使必須做一些腳本(我爲什麼不能使用腳本?),我會繼續尋找解決方案,請問我的老闆,哈哈)。非常感謝你! = D – Kira 2010-07-08 19:45:48

2

取決於你想做什麼,你可以添加一個屬性代碼隱藏,設置HiddenField控件的值,然後改爲使用該屬性。然後,在二傳手中,做任何你想做的事情。

即..

public string MyHiddenValue 
{ 
    get { return hiddenField.Value; } 
    set 
    { 
     hiddenField.Value = value; 
     if(MyHiddenValueChanged != null) 
      MyHiddenValueChanged(this, new EventArgs()); 
    } 
} 
public event EventHandler MyHiddenValueChanged; 
+0

在橋下所有的水之後,這就是我開始努力的工作 - @Kira可以使用事件和事件處理來完成想要的事情。對你很好,@dave thieben。 – Cyberherbalist 2010-07-08 22:43:56

相關問題