<!DOCTYPE HTML>
<html> <head>
<meta charset="utf-8" />
<title>HTML5本地存储之本地数据库篇</title>
<style>
.addDiv {
border: 2px dashed #ccc;
width: 400px;
text-align: center;
} th {
font: bold 11px "Trebuchet MS", Verdana, Arial, Helvetica, sans-serif;
color: #4f6b72;
border-right: 1px solid #C1DAD7;
border-bottom: 1px solid #C1DAD7;
border-top: 1px solid #C1DAD7;
letter-spacing: 2px;
text-transform: uppercase;
text-align: left;
padding: 6px 6px 6px 12px;
} td {
border-right: 1px solid #C9DAD7;
border-bottom: 1px solid #C9DAD7;
background: #fff;
padding: 6px 6px 6px 12px;
color: #4f6b72;
}
</style>
</head> <body>
<div class="addDiv">
<label for="user_name">姓名:</label>
<input type="text" id="user_name" name="user_name" class="text" />
<br />
<label for="mobilephone">手机:</label>
<input type="text" id="mobilephone" name="mobilephone" />
<br />
<label for="mobilephone">公司:</label>
<input type="text" id="company" name="company" />
<br />
<input id="add" type="button" value="新增记录" />
</div>
<br />
<div id="list">
</div>
<script type="text/javascript">
//打开数据库
var db = openDatabase('contactdb', '', 'local database demo', 204800); window.onload = function () {
loadAll();
} $('#add').onclick = function () {
save();
} //保存数据
function save() {
var user_name = $('#user_name').value;
var mobilephone = $('#mobilephone').value;
var company = $('#company').value;
//创建时间
var time = new Date().getTime();
db.transaction(function (tx) {
tx.executeSql('insert into contact values(?,?,?,?)', [user_name, mobilephone, company, time],
onSuccess, onError);
});
} //刷新数据库 并渲染
function loadAll() {
var list = $('#list');
db.transaction(function (tx) {
tx.executeSql(
'create table if not exists contact(name text,phone text,company text,createtime INTEGER)',
[]);
//读取数据
tx.executeSql('select * from contact', [], function (tx, rs) {
if (rs.rows.length > 0) {
var result = "<table>";
result +=
"<tr><th>序号</th><th>name姓名</th><th>手机</th><th>公司</th><th>添加时间</th><th>操作</th></tr>";
for (var i = 0; i < rs.rows.length; i++) {
var row = rs.rows.item(i);
var time = new Date();
time.setTime(row.createtime);
var timeStr = time.format("yyyy-MM-dd hh:mm:ss");
//拼装一行信息
result += "<tr><td>" + (i + 1) + "</td><td>" + row.name + "</td><td>" + row
.phone + "</td><td>" + row.company + "</td><td>" + timeStr +
"</td><td><input type='button' value='删除' onclick='del(" + row.phone +
")'/></td></tr>";
}
list.innerHTML = result;
} else {
list.innerHTML = "目前数据为空,赶紧开始加入联系人吧";
}
});
});
} //删除信息
function del(phone) {
db.transaction(function (tx) {
tx.executeSql('delete from contact where phone=?', [String(phone)], onSuccess, onError);
});
} //sql语句执行成功后执行的回调函数
function onSuccess(tx, rs) {
alert("操作成功");
loadAll();
} //sql语句执行失败后执行的回调函数
function onError(tx, error) {
alert("操作失败,失败信息:" + error.message);
} Date.prototype.format = function (format) {
var o = {
"M+": this.getMonth() + 1,
"d+": this.getDate(),
"h+": this.getHours(),
"m+": this.getMinutes(),
"s+": this.getSeconds(),
"q+": Math.floor((this.getMonth() + 3) / 3), //quarter
"S": this.getMilliseconds()
}
if (/(y+)/.test(format)) format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp
.$1.length));
for (var k in o) {
if (new RegExp("(" + k + ")").test(format)) {
format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[
k]).length));
}
}
return format;
} function $(s) {
return document.querySelector(s);
}
</script>
</body> </html>

HTML5本地存储之本地数据库篇的更多相关文章

  1. iOS 图片本地存储、本地获取、本地删除

    在iOS开发中.经常用到图片的本地化. iOS 图片本地存储.本地获取.本地删除,可以通过以下类方法实现. p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: ...

  2. HTML5系列三(多媒体播放、本地存储、本地数据库、离线应用)

    各浏览器对编码格式的支持情况 audio和video元素的属性介绍 1.src:媒体数据的URL地址 <video src="pr6.mp4"></video&g ...

  3. Html5 学习系列(六)Html5本地存储和本地数据库

    一个网站如何能在客户的浏览器存储更多的数据呢? 在Html4的时代在浏览器端存储点网站个性化的数据,尤其是用户浏览器的痕迹,用户的相关数据等一般只能存储在Cookie中,但是大多是浏览器对于Cooki ...

  4. Html5本地存储和本地数据库

    一个网站如何能在客户的浏览器存储更多的数据呢? 在Html4的时代在浏览器端存储点网站个性化的数据,尤其是用户浏览器的痕迹,用户的相关数据等一般只能存储在Cookie中,但是大多是浏览器对于Cooki ...

  5. HTML5本地存储和本地的数据库

    一个网站如何能在客户的浏览器存储更多的数据呢? 在Html4的时代在浏览器端存储点网站个性化的数据,尤其是用户浏览器的痕迹,用户的相关数据等一般只能存储在Cookie中,但是大多是浏览器对于Cooki ...

  6. HTML5离线存储和本地缓存

    一.离线存储 有一个web应用有三个文件index.html,a.js,b.css,现在需要把js和css文件缓存起来 1.在index.html里加上<html manifest=" ...

  7. HTML5——web存储 Web SQL 数据库 应用程序缓存 Web Workers 服务器发送事件 WebSocket

    web存储 比cookie更好的本地存储方式 localStorage - 用于长久保存整个网站的数据,保存的数据没有过期时间,直到手动去除. sessionStorage - 用于临时保存同一窗口( ...

  8. HTML5本地存储之Web Storage实例篇,最有用的是localStorage

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  9. 利用HTML5开发Android(7)---HTML5本地存储之Database Storage

    在上一篇<HTML5本地存储之Web Storage篇>中,简单介绍了如何利用localStorage实现本地存储:实际上,除了sessionStorage和localStorage外,H ...

随机推荐

  1. redis----------基本命令使用

    1.查看全部缓存数据的key keys * 2.清空当前redis数据库缓存 flushdb  (redis默认由16个库(0~15号). 且默认使用的是0号库.库之间的切换使用select命令例如: ...

  2. 微信小程序之图片base64解码

    不知道大家在做微信小程序的时候遇到base64解码的问题,我之前在做微信小程序的时候遇到base64解析图片一直有问题,所以在这里把遇到的问题和解决方案在这里记录一下: 在平时的项目中我们是直接用ba ...

  3. SQL注入检测方法

    private bool CheckParams(params object[] args){ string[] Lawlesses={"=","'"}; if ...

  4. 异步 async & await

    1 什么是异步 异步的另外一种含义是计算机多线程的异步处理.与同步处理相对,异步处理不用阻塞当前线程来等待处理完成,而是允许后续操作,直至其它线程将处理完成,并回调通知此线程. 2 异步场景 l  不 ...

  5. Oracle中row_number()、rank()、dense_rank() 的区别

    link:https://www.cnblogs.com/qiuting/p/7880500.html

  6. 【SparkStreaming学习之二】 SparkStreaming算子操作

    环境 虚拟机:VMware 10 Linux版本:CentOS-6.5-x86_64 客户端:Xshell4 FTP:Xftp4 jdk1.8 scala-2.10.4(依赖jdk1.8) spark ...

  7. arcgis for js 之 获取两点之间的距离

    换了新公司,接触新行业,半路出家,看着别人的代码,看着api慢慢理解. 需求如下:已知两点坐标求距离. 思路,没有,站在同事的肩膀上踩路子,给的这个链接 https://developers.arcg ...

  8. Linux Spi驱动移植小结

    2012-01-07 22:21:29 效果图: 理论学习后,主要是linux中spi子系统设备框架的了解后,主控制器与设备分离的思想,那么我要开始动手了. 1,  make menuconfig添加 ...

  9. 叮咚,你的Lauce上线了!

    哈,2014 - 2016 - 2018,虽然每隔两年才有那么一篇随笔,博客园,我还是爱你的~ 嗯,2018,马上又要失业了,我这是自带黑属性啊啊啊哈,工作了4年多的项目要被砍掉了, 倒不是说非要这个 ...

  10. Git随笔 -- 初始化远程仓库

    1. 新建文件夹(作为本地仓库与之远程仓库关联),进入文件夹空白处右键选择Git Bash(安装程序下载).[或者在开始菜单里找到Git Bash并打开,使用命令进入文件夹:cd 文件夹名称.] 2. ...