hiddenfield
控制項hiddenfield
控制項顧名思義就是隱藏輸入框的伺服器控制項
,它能讓你儲存那些不需要顯示在頁面上的且對安全性要求不高的資料。也許這個時候應該有這麼乙個疑問,為什麼有了
viewstate
、session
和cookie
等狀態儲存機制,還需要用起
hiddenfield呢?
增加hiddenfield
,其實是為了讓整個狀態管理機制的應用程度更加全面。因為不管是
viewstate
、cookie
還是session
,都有其失效的時候,比如使用者因某種需求要求設定
viewstate
為false
,或者環境條件限制使用
cookie
,或者使用者長時間沒有動作導致
session
過期等等,那這個時候
hiddenfield
無疑是最佳選擇。
hiddenfield
控制項的作用簡單的說是用於儲存需要在向伺服器的傳送間保持的值。它作為
<input type="hidden"/
>元素呈現,並且通過新增
runat=」server」
就可以使它成為標準的
html
伺服器控制項。下面列出的是
asp.net hiddenfield web
伺服器控制項可以使用的屬性和事件。 因為
hiddenfield
的值將呈現給客戶端瀏覽器,所以它不適用於儲存安全敏感的值。若要為
hiddenfield
控制項指定值,請使用
value
屬性,請注意是
value
而不是text
。事實上
hiddenfield
並沒有text
屬性,這和
dropdownlist
、checkboxlist
等標準按鈕的屬性命名方式一致。在標準的屬性命名方式中,
text
的值是呈現給使用者看到的,而
value
的值則是通長是通過**進行控制的。例如你可以讓
dropdownlist
的text
屬性顯示使用者名稱而讓它的
value
儲存使用者的編號。
當然它的作用還不只這些,下面是做系統時的應用!
在專案中的應用:
web端:
' />
<%#eval("studentcode") %>
<%#eval("studentname") %>
後台的獲取:
//repstudent繫結的是從資料庫中查出的datatable值
//遍歷所有的核取方塊,如果被選中則對應的授課關係將被刪除
foreach (repeateritem ri in repstudent.items)
}
為什麼要這樣使用呢?為什麼要用hiddenfield控制項呢(當然可能有更好的辦法)?
原因:首先,我需要從資料庫中查出資料,有很多字段,但是在介面只需要顯示其中的兩三個,但問題是,我需要將
其他不顯示的字段更新到其他表中,如果我直接繫結顯示的值,那麼其他字段值就找不到了,還需要去查,可能更麻煩,但是應用hiddenfield控制項,我可以在web層繫結所有我需要的不顯示滴欄位,然後到後台獲取到hiddenfield控制項繫結的值,將這些值賦給實體,去更新其他資料庫表。
當然這也不一定是最好的解決辦法,而且hiddenfield控制項的功能也不僅如此,這些還需要我們在實踐過程中不斷應用,不斷實踐,在這裡只是給大家提供一種方式,也是記錄一下自己對hiddenfield的認識。
如果對於我上面提到的問題,大家有更好的解決辦法,希望大家提寶貴意見!共同學習!
HiddenField控制項的使用
asp.net2.0 hiddenfield控制項 1 2007 05 12 23 18hiddenfield控制項顧名思義就是隱藏輸入框的伺服器控制項,它能讓你儲存那些不需要顯示在頁面上的且對安全性要求不高的資料。也許這個時候應該有這麼乙個疑問,為什麼有了viewstate session和coo...
HiddenField控制項的使用
asp.net2.0 hiddenfield控制項 1 2007 05 12 23 18hiddenfield控制項顧名思義就是隱藏輸入框的伺服器控制項,它能讓你儲存那些不需要顯示在頁面上的且對安全性要求不高的資料。也許這個時候應該有這麼乙個疑問,為什麼有了viewstate session和coo...
隱藏SWT控制項
隱藏swt控制項 有時候需要根據使用者的輸入隱藏某些控制項,呼叫control.setvisible false 並不能夠消除控制項占用的空間。解決的方法如下 控制項的parent使用gridlayout,控制項使用griddata griddata control.getlayoutdata ex...