2012-12-13 74 views
1

我創建了一個註冊表單和一個錯誤處理程序,用於處理用戶在註冊時發生的錯誤。提交表單後,用戶可能會看到錯誤。我試圖使用JavaScript來保持用戶在文本框中輸入的數據,即使他已經提交了表單,因此他沒有再次重新輸入數據。 對於我使用HTML和CSS的表單。 讓我困惑的是我要使用什麼函數,以及如何將它應用於表單的每個元素! 提前謝謝!提交表單後,保留用戶在文本框中的輸入

+1

你可以使用ajax,這樣表單也被提交,數據也不會丟失。 –

+0

希望你知道ajax? –

+0

您的問題沒有足夠的信息可以肯定地說。如果數據不是私人的,您可以將其保存在cookie中。或者將url中的值作爲GET變量傳遞。如果你不使用服務器端腳本,你可以在onload事件中設置數據:http://www.w3schools.com/jsref/event_onload.asp –

回答

2

我發現這個,我希望它有幫助!我假設你正在IIS上運行這個或類似的東西,否則,PHP有一個非常友好的方式讓你做這個$ _POST變量。

aspx文件:

<script type="text/javascript"> 
<!-- 
function setSessionVariable(valueToSetTo) 
{ 
__doPostBack('SetSessionVariable', valueToSetTo); 
} 
// --> 
</script> 

aspx.cs文件:

private void Page_Load(object sender, System.EventArgs e) 
{ 
// Insure that the __doPostBack() JavaScript method is created... 
this.GetPostBackEventReference(this, string.Empty); 

if (this.IsPostBack) 
{ 
    string eventTarget = (this.Request["__EVENTTARGET"] == null) ? string.Empty : this.Request["__EVENTTARGET"]; 
    string eventArgument = (this.Request["__EVENTARGUMENT"] == null) ? string.Empty : this.Request["__EVENTARGUMENT"]; 

    if (eventTarget == "SetSessionVariable") 
    { 
    Session["someSessionKey"] = eventArgument; 
    } 
} 
} 

後來的後來,你必須有表單元素讀取類似

之一,那麼你將有到Javascript的onpageload或類似的,然後有document.FormName.element.ElementName =會話變量(或從解剖POST數據設置var)。

我的歉意,我更熟悉PHP - 我希望這可以幫助你找到你正在尋找的答案!

+0

非常感謝,雖然(希望這聽起來不會很愚蠢 - 我有點初學者)你能告訴我一個.cs文件包含什麼? –

+0

不幸的是,我對ASP不太瞭解,所以我不確定。 [鏈接](http://www.codeproject.com/Articles/5897/Behind-the-scenes-of-ASPX-files)< - 說aspx文件的.cs做繁重,而aspx文件本身做的風格和設計工作。 我會推薦以下由@ anuj-arora提交的想法,因爲AJAX將做大量的工作,將您的數據保留在客戶端,提交的部分或多或少地在後臺工作,而無需「重新加載」頁面。 那裏有幾個AJAX框架,祝好! –

相關問題