html5-简单web留言功能
localStorage 方法
特点:持久化的本地存储,除非主动手动删除,否则数据一直不会过期。
方法:
1.设置
setItem(key,value):在本地客户端存储一个字符串类型的数据。
setItem.key=value:也可以像这样直接存储。
保存数据:
localStorage.setItem(key, value);
保存添加数据例子:
//方法1向本地存储中添加一个名为name,值为"syl"的key-value对象
localStorage.setItem("name", "syl");
//方法2
localStorage["price"] = 1314;
//方法3
localStorage.amount = 520;
注:使用 setItem
方法保存数据时,将第一个参数 key
指定为键名,将第二个参数 value
指定为键值,保存时不允许保存相同的键名,保存后可以修改键值,但不允许改键名(只能重新取键名,然后再保存键值)。
2.获取
getItem(key):读取已存储在本地的数据,获取键值。
localStorage.key:也可以像这样直接获取值。
读取数据:
localStorage.getItem(key);
注:使用 getItem
方法读取数据时,将参数指定为键名,返回键值。
3.删除
removeItem(key):移除已存储在本地数据,通过键名作为参数删除数据。
localStorage.clear():也可以一次性清除
删除单个数据:
localStorage.removeItem(key);
注:通过 key
删除本地数据。
例子:
<body>
<h1>简单Web留言本</h1>
<textarea id="memo" cols="60" rows="6"></textarea><br />
<input type="button" value="新增留言" onclick="saveStorage('memo');" />
<input type="button" value="清空数据" onclick="clearStorage();" />
<input
type="button"
value="清空最后一个数据"
onclick="clearsingleStorage();"
/>
<hr />
<p id="msg"></p>
<script type="text/javascript">
//savaStorage是一个新增留言的函数
function saveStorage(id) {
//获取textarea的value值
var data = document.getElementById(id).value;
//获取当前时间
var time = new Date().toUTCString();
//将当前时间作为键名,textarea的value值(也就是用户输入的值)的值作为键值
localStorage.setItem(time, data);
//显示留言
showMsg("msg");
}
//showMsg是一个显示留言的函数
function showMsg(id) {
var result = '<table border="1">';
//遍历本地储存数据
for (var i = 0; i < localStorage.length; i++) {
//获取key值
var key = localStorage.key(i);
//获取value值
var value = localStorage.getItem(key);
//显示数据
result += "<tr><td>" + value + "</td><td>" + key + "</td></tr>";
}
result += "</table>";
var target = document.getElementById(id);
target.innerHTML = result;
}
//显示留言
showMsg("msg");
//clearStorage是一个清空留言的函数
function clearStorage() {
//清空数据
localStorage.clear();
//显示留言
showMsg("msg");
}
//clearsingleStorage是一个删除单个数据的函数
function clearsingleStorage() {
localStorage.removeItem(localStorage.key(localStorage.length - 1));
//显示留言
showMsg("msg");
}
</script>
</body>