H5----本地存储

1、localStorage:本地存储

用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去删除。属性是只读的。localStorage 只支持 string 类型的存储,这里要特别说明一下 localStorage 的使用也是遵循同源策略的,所以不同的网站直接是不能共用相同的 localStorage。

<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        function change() {
            var time=new Date().getTime();
//            本地存储设置 键值对
            localStorage.setItem(time.toLocaleString(),txt.value);
//          打印存储的长度
            console.log(localStorage.length);
            show()
        }
        function show() {
//            拼接table标签
            var result="<table border='1'>";
            for(var i=0;i<localStorage.length;i++){
//                拼接tr、td标签.  通过localStorage.key(index)取key,localStorage.getItem(key)取值
                result+="<tr><td>"+localStorage.key(i)+"</td><td>"+localStorage.getItem(localStorage.key(i))+"</td></tr>";
            }
            result+="</table>";
            div1.innerHTML=result;
        }
        function del() {
            var c=localStorage.length;
            for (var i=0;i<c;i++){
                //localStorage.removeItem(key)  删除一个元素
                localStorage.removeItem(localStorage.key(i));
                console.log(i);
            }
//            清空数据库,不删除表结构
//            localStorage.clear();
            div1.innerHTML="";
        }
    </script>
</head>
<body>
<textarea id="txt" cols="100" rows="30"></textarea><br><br>
<input type="button" onclick="change()" value="添加">
<input type="button" onclick="del()" value="删除">
<div id="div1"></div>
</body>
</html>

(2)、小项目-----获取用户信息


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
        function save() {
//            创建一个json对象
            var data=new Object();
            data.name=uname.value;
            data.email=uemail.value;
            data.tel=utel.value;
            data.memo=umemo.value;
//            json对象转化成json字符串
            var str=JSON.stringify(data);
//            按照用户名存
            localStorage.setItem(uname.value,str);
        }
        function find() {
//            将查找的用户信息解析
            var data=JSON.parse(localStorage.getItem(findu.value));
            var result ="姓名:"+data.name+"<br>"+"Email:"+data.email+"<br>"+"电话号码:"+data.tel+"<br>"+"备注:"+data.memo;
            msg.innerHTML=result;
        }
    </script>
</head>
<body>
<h1>用户信息卡</h1>
<table>
    <tr><td>姓名</td><td><input type="text" id="uname"></td></tr>
    <tr><td>Email</td><td><input type="text" id="uemail"></td></tr>
    <tr><td>电话号码</td><td><input type="text" id="utel"></td></tr>
    <tr><td>备注</td><td><input type="text" id="umemo"></td></tr>
    <tr><td><input type="button" value="保存" onclick="save()"></td></tr>
</table>
<hr/>
<p>查询:<input id="findu">
    <input type="button" value="按姓名查询" onclick="find()">
<p id="msg"></p>
</body>
</html>

※:前端获取到值后用Json字符串打包给后台,后台拿到解析,进行设置。

2、Web Sql

  1. openDatabase:这个方法使用现有的数据库或者新建的数据库创建一个数据库对象。
  2. transaction:这个方法让我们能够控制一个事务,以及基于这种情况执行提交或者回滚。
  3. executeSql:这个方法用于执行实际的 SQL 查询。
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
    <script>
//     创建一个数据库(数据库名,版本号,描述数据库,大小,回调方法[都没括号],最好写上)
        var db=openDatabase("student","1.0","学生表",1024*1024,success);
        function success() {
            alert("创建成功");
        }
        function fault() {
            alert("创建失败");
        }
        function select1() {
            db.transaction(function (tx) {
//            tx.executeSql("create table stu(id,name,age);",[]);
//                执行sql语句
            tx.executeSql("insert into stu(id,name,age) values(?,?,?);",[2,"vn",18]);
                var result = "";
                            //        成功后返回一个rs结果集
                tx.executeSql("select * from stu;", [], function (tx, rs) {
                    // rs.rows.length 获取返回结果的行数的长度
                    for (var i = 0; i < rs.rows.length; i++) {
                        //  rs.rows.item(index).name   通过index获取当前元素  
                        result += rs.rows.item(i).name+"<br>";
                    }
                    div1.innerHTML = result;
                })
            });
        }
        function upd() {
            db.transaction(function (tx) {
                //  ?代表占位符 ,后面[按顺序写参数],后面跟成功后的方法                
                tx.executeSql("update stu set id=? where name=?",[3,"vn"],alert("ok"));
            });
        }
        function del() {
            db.transaction(function (tx) {
                tx.executeSql("delete from stu where id=?",[3],alert("ok"));
            })
        }
    </script>
</head>
<body>
<input type="button" value="查询" onclick="select1()">
<input type="button" value="update" onclick="upd()">
<input type="button" value="del" onclick="del()">
<div id="div1"></div>
</body>
</html>

一个web_sql的小项目:https://download.csdn.net/download/weixin_41678001/10801007

猜你喜欢

转载自blog.csdn.net/weixin_41678001/article/details/84328673