2010-10-05 166 views
1

我有一個登錄頁面,它將幾個值存儲到localStorage(html5),然後繼續到VB.Net頁面。我正在尋找一種方法在VB中,可以讀回這些存儲的值,並使他們VB變量。有任何想法嗎?在VB.Net中訪問js localStorage存儲值

回答

1

VB.NET代碼隱藏在服務器上運行,並且無法直接訪問瀏覽器的本地存儲API。

但是,您可以使用JavaScript在登錄頁面上輕鬆填寫一些隱藏字段,這些字段將在提交時發佈,並可從.NET頁面的代碼隱藏中讀取。

像這樣(未測試):

this.document.getElementById("HIDDEN_FIELD_ID").value = localStorage.STORED_VALUE; 
... 
<input type="hidden" id="HIDDEN_FIELD_ID" /> 
... 

在.NET頁面的值可以讀到這樣:

Request.Form("HIDDEN_FIELD_ID"

(還有其他的方法,但這樣一很容易掌握)。

請注意,localStorage中的登錄數據可以由用戶訪問(和修改),因此請確保您沒有創建安全風險。

0

此示例使用與VB代碼以上概念:

下面是HTML體元件:

這裏是頁加載事件:

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load 
    Dim s As String 
    s = hfLocalStorage.Value 

    'This next line prevents the javascript from submitting the form again. 
    hfLoaded.Value = "Loaded" 
End Sub 

現在你的代碼具有可用的localStorage值。