web storage 之留言板

浏览器支持

IE8+,Firefox 28.0+,chrome 33.0+,Safari 7.0+。

先来了解几个js的问题。

JSON.parse() 和 JSON.stringify()

parse用于从一个字符串中解析出json对象,如

var str = ‘{"name":"huangxiaojian","age":"23"}‘

结果:

JSON.parse(str)

Object

  1. age: "23"
  2. name: "huangxiaojian"
  3. __proto__: Object

stringify()用于从一个对象解析出字符串,如

var a = {a:1,b:2}

结果:

JSON.stringify(a)

"{"a":1,"b":2}"

存储数据

用 web storage 做数据库检索的时候可以用用到。如果存入多个数据可以创建 object 对象,然后把所获取的value 值也就是字符串分别赋给创建的对象的自定义属性。私有的对象也受到保护。

例子1:

 function iocalStorage(id) {
           var obj=new Object;
        obj.name=document.getElementById("name").value;
        obj.email=document.getElementById("email").value;
        obj.tel=document.getElementById("tel").value;
        obj.memo=document.getElementById("memo").value;
        var str=JSON.stringify(obj);
        localStorage.setItem(obj.name, str);
        alert("你好已保存");
        //readiocalTwo(‘iocal_msg‘); 读取内容

        //readiocalThree(‘iocal_msg‘);//检索内容

        //readiocalFour(id)//检索内容
    } 

<div class="box">
    <ul>
        <li><span>姓名:</span> <input class="txt" type="text"  id="name"></li>
        <li><span>EMIL:</span> <input class="txt" type="text" id="email"></li>
        <li><span>电话号码:</span> <input class="txt" type="text" id="tel"></li>
        <li><span>备注:</span> <input class="txt" type="text" id="memo"></li>
    </ul>
   <div class="bottom">
     <input type="button" value="保存数据" class="btn" onclick="iocalStorage(‘iocal_input‘)">
   </div>

</div>

检索数据

第一种读取方式: 全部读取,通过循环key值输出

//读取根据key function readiocal(id) { var traget = document.getElementById(id); var msg = localStorage.getItem("message"); for(var i=0;i<localStorage.length;i++) { var key=localStorage.key(i); traget.innerHTML+=key+":"+localStorage.getItem(key)+"<br/>"; } } html部分: <input type="button" class="fl btn" value="检索数据" onclick="readiocal(‘iocal_msg‘)"> <p id="iocal_msg"> <p>

第二种读取方式: 读取根据ID 根据输入的key值 找出匹配的整条数据

 //读取根据ID
    function readiocalTwo(id) {
        var traget = document.getElementById(id);
        var findTxt =document.getElementById("find").value;
        var msg=localStorage.getItem(findTxt);//根据输入的值检索
         traget.innerHTML+=msg+"<br/>";

    }

html:

<div class="box">
<div class="jiansuo">
    <span class="fl">检索:</span><input id="find" type="text" class="txt fl"> <input type="button" class="fl btn" value="检索数据" onclick="readiocal(‘iocal_msg‘)">
   </div>
    <p id="iocal_msg">

    <p>

</div>

输出形式的控制 通过 JSON.parse() 把字符串转化为对象。

 //检索 根据输入ID框的value值
    function readiocalFour(id) {

        var traget = document.getElementById(id);
        traget.innerHTML="";
        var findTxt =document.getElementById("find").value;
        var obj=localStorage.getItem(findTxt);
        var data=JSON.parse(obj);
        var reslut="姓名 "+data.name+"<br>";
            reslut+="EMIl "+data.email+"<br>";
            reslut+="tel "+data.tel+"<br>";
            reslut+="memo "+data.memo+"<br>";

        var msg=localStorage.getItem(findTxt);//
         traget.innerHTML+=reslut+"<br/>";
    }
<div class="box">
 <div class="jiansuo">
    <span class="fl">检索:</span><input id="find" type="text" class="txt fl"> <input type="button" class="fl btn" value="检索数据" onclick="readiocalTwo(‘iocal_msg‘)">
   </div>
    <p id="iocal_msg">

    <p>
</div>
时间: 2024-10-28 21:18:39

web storage 之留言板的相关文章

H5 基于Web Storage 的客户端留言板

<!DOCTYPE html> <html> <head> <meta name="author" content="Yeeku.H.Lee(CrazyIt.org)" /> <meta http-equiv="Content-Type" content="text/html; charset=GBK" /> <title> 客户端留言板 </tit

Web开发从零单排之二:在自制电子请帖中添加留言板功能,SAE+PHP+MySql

在上一篇博客中介绍怎样在SAE平台搭建一个html5的电子请帖网站,收到很多反馈,也有很多人送上婚礼的祝福,十分感谢! web开发从零学起,记录自己学习过程,各种前端大神们可以绕道不要围观啦 大婚将至,各种事情很多,今天终于驱动自己把上次遗留的内容补充完 奉上在电子请帖中添加留言板的功能简介,采用php脚本语言和mysql数据库,同样在新浪的SAE平台下,可以节省很多部署和维护工作 在SAE的个人项目管理界面,从MySql页面点击"管理MySql",进入SAE提供的mysql数据库管理

HTML5 Web Storage

前言 本章主要内容是Web Storage与本地数据库,其中Web Storage 是对cookie的优化,本地数据库是HTML5新增的一个功能,使用它可以在客户端建立一个数据库 大大减轻服务器端的负担,加快访问数据速度. 学习本章需要掌握Web Storage基本概念,了解sessionStorage与localStorage的使用与差别 掌握本地数据库的使用 什么是WebStorage? 前面说过,webstorage是对cookie的优化而来,HTML4中使用cookie在客户端存储用户数

ws留言板

<!DOCTYPE html><html><head> <meta charset="UTF-8"> <title>Web Storage之简易留言板</title> <style type="text/css"> :root{ margin: 5px; } textarea{ width:100%; height:200px; } .liuyan-container{ width:

NVelocity 实现简单的留言板

留言版简单实现 ----------------------------------------------------------------------------------------------------------------------------------- 项目截图: 1,新建留言板数据库:LiuYanbanDB USE [LiuYanbanDB] GO /****** Object: Table [dbo].[LiuYan] Script Date: 2015/5/15

jsp中运用application实现共享留言板功能

jsp中application的知识点总结: 1.一个Web应用程序启动后,将会自动创建一个application对象,在整个应用程序的运行过程中只有这一个application对象,即所有访问该网站的客户都共享一个application对象. 2.作用:在整个应用运行期间保存共享数据,实现用户间数据的共享. 3.application对象的生命周期:从Web服务器启动,直到Web服务器关闭. application对象是应用程序级的,如果application中不存在String name,则

使用JSP、Servlet实现一个简单的留言板

1 留言板的页面 messageBoard.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/htm

基础项目开发总结:留言板(1)

1.创建新项目-ASP.net空Web应用程序 2.配置数据库连接文件web.config文件:连接字符串为: <connectionString> <add name="SQLCONNECTIONSTRING" connectionstring="data source=.;user id=sa,pwd=******;database=liuyan" prividername="System.Data.SqlClient"/&

html5本地存储(一)------ web Storage

在html5中与本地存储相关的两个相关内容:Web Storage  与本地数据库 web Storage存储机制是对html4中的cookie存储机制的一个改善.web Storage就是在web上存储数据的功能(针对客户端本地),使用它可以再客户端本地建立一个数据库,这样可以存储页面内容在本地,还加快了访问数据的速度. web Storage分两种:sessionStorage   与  localStorage 一.sessionStorage sessionStorage为临时保存,将数