//打开数据库 var db = openDatabase('contactdb','','local database demo',204800); //保存数据 function save(){ var user_name = document.getElementById("user_name").value; var mobilephone = document.getElementById("mobilephone").value; var company = document.getElementById("company").value; //创建时间 var time = new Date().getTime(); db.transaction(function(tx){ tx.executeSql('insert into contact values(?,?,?,?)',[user_name,mobilephone,company,time],onSuccess,onError); }); } //sql语句执行成功后执行的回调函数 function onSuccess(tx,rs){ alert("操作成功"); loadAll(); } //sql语句执行失败后执行的回调函数 function onError(tx,error){ alert("操作失败,失败信息:" error.message); }
要展现当前所有已保存的联系人列表,可通过如下JS代码实现:
复制代码
代码如下:
//将所有存储在sqlLite数据库中的联系人全部取出来 function loadAll(){ var list = document.getElementById("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 = "
"; result = "
序号
姓名
手机
公司
添加时间
操作
"; for(var i=0;ivar row = rs.rows.item(i); //转换时间,并格式化输出 var time = new Date(); time.setTime(row.createtime); var timeStr = time.format("yyyy-MM-dd hh:mm:ss"); //拼装一个表格的行节点 result = "
//删除联系人信息 function del(phone){ db.transaction(function(tx){ //注意这里需要显示的将传入的参数phone转变为字符串类型 tx.executeSql('delete from contact where phone=?',[String(phone)],onSuccess,onError); }); }