2009-05-20 61 views
0

問題1) 我有一個控制,這是我用一句話添加從服務器端的屬性通過使用JavaScript函數這個屬性的值:兩個ASP.NET回發相關的問題

Document.getElementById(ControlName).setAttribute("myTestAttribute", 「Hello Server!!」); 

我的問題是,當我嘗試存取權限的屬性值上回發處理功能的屬性是空的。 我錯過了一些步驟?

問題2) 是否有可能從Postback治療功能中獲取服務器端頁面的完整HTML代碼?

回答

1

如果javascript在頁面上修改了elemants,它們將不會被服務器看到。發生回發時,可用於服務器的唯一數據是在頁面上的表單中發送的數據。

ASP.net通過將標準表單元素的值放入一個名爲viewstate的隱藏字段(通常編碼爲不能直接讀取)來處理標準表單元素,例如文本框,下拉列表等。

如果您希望由javascript修改的頁面元素對服務器可見,您可以編寫新的隱藏表單元素並從Request [string name]數組中檢索它們。

0
  1. 把那個屬性在Page_Init添加代碼
  2. 都能跟得上
0

在回答問題2,你可以保存這些屬性的狀態在ViewState中,如果你想要回傳後,知道自己的價值。