如何在按下提交按钮之前将用户输入的值存储到javascript变量中

时间:2015-02-14 04:46:36

标签: javascript

如何在提交表单之前在文本框中捕获用户输入?

每当我的python应用程序获得电子邮件发送功能的另一个收件人ID时,页面刷新将删除在提交之前输入的主题行和消息正文中的任何文本。

所以我想在用户点击之前捕获主题行和消息体,并提交"按钮。

(1)获取者和(2)输入主题行和消息正文在同一页面上。如果用户在选择任何邮件收件人之前在主题行/邮件正文中键入内容,则在添加收件人时,页面刷新将删除主题行和邮件正文。

是一个完全的JS初学者。我试过这个,这有助于解释所需要的东西。

<input type="textbox" id="hello-world3" value="javascriptvar" onkeydown="var javascriptvar = document.getElementById('hello-world3').value;" />

使用上面的例子,无论我输入什么都被字符串&#34; javascriptvar&#34;在刷新期间。如何在按下提交之前刷新哪些用户类型?

感谢,

Alex Glaros

1 个答案:

答案 0 :(得分:0)

建议不要将javascript和HTML结合使用,因为它会破坏可读性

您可以在browser storage中添加输入值,然后从该存储中读取该值。请注意,此值保留存储,因此请在提交表单之前将其删除

<html>
<body>
<form action="your action url">
Name:  <input type="text" id="nameId" onchange="storeName()"/><br/>
<input type="submit" value="submit"/>
</form>
</body>
<script>
 //getting the  valule from the storage 
 var nameFromStorage = localStorage.getItem("storedName");
//checking the value is not empty
if(nameFromStorage!=undefined&&nameFromStorage!=null&&nameFromStorage.trim().length!=0&& typeof nameFromStorage == "string"){
    document.getElementById("nameId").value=nameFromStorage;
}
//storing the value in the storage
function storeName(){
var nameInputVal = document.getElementById("nameId").value;
localStorage.setItem("storedName",nameInputVal);
}
</script>
</html>