2017-08-24 55 views
0

我從文本字段獲取值並將其存儲在本地存儲中,因爲我需要在用戶驗證後將相同的值輸入到文本字段。一旦存儲了值,它就不會自動更新,因爲每次更改文本字段中的值時,我都希望在本地存儲中存儲相同的值,但只會存儲一個值,並且每次存儲第一個值時都會顯示相同的值時間。如何在本地存儲器中更新數據JavaScript

JSP

<s:textfield name="emailId" id="emailId" label="Email" cssClass="dataFieldCell3" value="%{#signerslist.email}" /> 

JS

設置變量在本地存儲

function showEmail() { 
    var email = document.getElementById("emailId").value; 
    localStorage.setItem("invalidEmail", email); 
} 

得到它,並給它分配回的文本字段

function emailValidationErrorMessage() { 
    if('${emailValidationMessage}' !== "") { 
     $("#Signers").show(); 
     var getEmailValue = localStorage.getItem("invalidEmail"); 
     document.getElementById("emailId").value = getEmailValue; 
    } 
} 

請指導。 ..

謝謝:)

+0

爲什麼你使用localStorage而不僅僅是一個常規的事件處理程序? – adeneo

+0

我認爲這是如此使用它的唯一方法。 – Mike

回答

1

...我每次更改文本字段我希望存儲 在本地存儲的值相同的值時...

然後, showEmail函數需要設置爲文本字段的回調函數change事件,以便localStorage將在每次用戶更改文本字段中的值時更新。

document.getElementById("emailId").addEventListener("change", showEmail); 
+0

Scott!那麼你想讓我添加這條線? – Mike

+0

@Mike這應該被添加到你的JavaScript,在網頁加載完成後執行,所以你可以把它放到一個'script'中,它就在關閉'body'標籤之前。 –

+0

你太棒了。它像一個魅力。非常感謝。 – Mike

相關問題