表单:
<form>
<p>
<label for="user">账号名</label><input autocomplete="off" type="text" id="user" name="user">
</p>
<p>
<label for="psd">密码</label><input type="text" autocomplete="off" id="psd" name="psd">
</p>
<p>
<label for="repsd">确认密码</label><input type="text" id="repsd" name="repsd">
</p>
<input type="button" value="注册" id="btn">
</form>
js代码:
1获取注册按钮
2给注册按钮绑定点击事件
3错误先行,判断用户名是不是空的,密码是不是空的,确认密码的值是不是不等于密码框的值
4获取用户名,获取密码
5存储注册用户的数组-从本地数组中获取data值,如果有的话,直接push是可以的;但是如果没有data,那么会得到null,null是没有push方法可以调用,所以会报错;这里利用||运算符来实现了兼容操作
6在添加当前数据到arr之前判断用户名是否重复!!!
7将本次注册的账号密码存到arr
8设置本地data里的json格式字符串
var btn = document.getElementById('btn')
btn.onclick = function () {
if (user.value === '' || psd.value === '' || psd.value !== repsd.value) return
var username = user.value
var password = psd.value
var arr = JSON.parse(localStorage.getItem('data')) || []
for (var i = 0; i < arr.length; i++) {
if (arr[i].username === username) {
alert('注册过了')
return
}
}
arr.push({username:username,password:password})
alert('注册成功')
localStorage.setItem('data',JSON.stringify(arr))
location.href='./案例-注册之后登录.html'
}