2012-07-23 171 views
2

我想将表单数据保存到使用javascript的keyup事件上的local storage。我有下面的代码,但我得到错误“未捕获TypeError:无法设置属性'onkeyup'null”。保存到本地存储onkeyup

HTML

<input type="text" id="username" /> 

javscript

var user = document.getElementById("username"); 
user.onkeyup = function(){ 
    localStorage.setItem('user', user.value); 
}; 
+0

当你执行JS代码时,你的文档被加载了吗?如果不是,那么当你的JS代码被执行时你的var用户为空。 – odupont 2012-07-23 10:13:54

回答

2

您正在尝试完成加载之前访问DOM元素。将你的代码包装在一个函数中,然后调用window.onload

function init() { 
var user = document.getElementById("username"); 
user.onkeyup = function(){ 
    localStorage.setItem('user', user.value); 
}; 
} 
window.onload = init;