HTML5操作WebSQL数据库的实例代码

时间:2021-05-08

HTML代码:

<!DOCTYPE html><html> <head lang="en"> <meta charset="UTF-8"> <title>列车时刻表查询</title> <meta name="viewport" content="width=device-width,initial-scale=1"> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" /> <script src="http://code.jquery.com/jquery-1.11.1.min.js"></script> <script src="http://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script> </head> <script src="js/connect.js"></script> <body onload="init()"> <div data-role="page" id="pageone"> <div data-role="header" data-position="fixed"> <h1>列车时刻表查询</h1> </div> <div data-role="main" class="ui-content"> <p align="center">请给我留言</p> <table data-role="table" class="ui-responsive"> <thead> <tr> <th>姓名:</th> <th>留言:</th> </tr> </thead> <tbody> <tr> <td><input type="text" id="name"></td> <td><input type="text" id="memo"></td> </tr> </tbody> </table> <button type="submit" onclick="saveData()">留言</button> <table data-role="table" data-mode="" class="ui-responsive" id="datatable"> <!--这里是留言板的显示区域--> </table> </div> <!-- 作者:ceet@vip.qq.com 时间:2017-08-26 描述:底部TAB --> <div data-role="footer" data-position="fixed"> <div data-role="navbar"> <ul> <li> <a href="index.html#index" data-icon="grid" class="ui-btn-active">查询</a> </li> <li> <a href="index.html#detail" data-rel="popup" data-icon="star">收藏</a> </li> <li> <a href="test.html" data-icon="comment">给我留言</a> </li> </ul> </div> </div> <!--收藏功能--> <div data-role="popup" id="myPopup" class="ui-content" data-theme="b"> <a href="#" data-rel="back" class="ui-btn ui-btn-a ui-corner-all ui-shadow ui-btn ui-icon-delete ui-btn-icon-notext ui-btn-right">Close</a> <p>收藏成功,暂且不做处理!.</p> <p>请点击右上角有个关闭按钮</p> <p><b>提示:</b> 你也可以点击弹窗的外部区域来关闭弹窗。</p> </div> </div> </body></html>

JS代码:

/** * HTML5 操作本地WebSQL数据库 * 作者:汪政 * 时间:2017/08/26 15:03:19 */var datatable = null;var db = openDatabase("MyData", "", "My Database", 1024 * 100);//初始化函数方法function init() { datatable = document.getElementById("datatable"); showAllData();}//首先移除乱七八糟的东西function removeAllData() { for(var i = datatable.childNodes.length - 1; i >= 0; i--) { datatable.removeChild(datatable.childNodes[i]); } var tr = document.createElement("tr"); var th1 = document.createElement("th"); var th2 = document.createElement("th"); var th3 = document.createElement("th"); th1.innerHTML = "姓名"; th2.innerHTML = "留言"; th3.innerHTML = "时间"; tr.appendChild(th1); tr.appendChild(th2); tr.appendChild(th3); datatable.appendChild(tr);}//显示WebSQL中的数据function showData(row) { var tr = document.createElement("tr"); var td1 = document.createElement("td"); td1.innerHTML = row.name; var td2 = document.createElement("td"); td2.innerHTML = row.message; var td3 = document.createElement("td"); var t = new Date(); t.setTime(row.time); td3.innerHTML = t.toLocaleDateString() + " " + t.toLocaleTimeString(); tr.appendChild(td1); tr.appendChild(td2); tr.appendChild(td3); datatable.appendChild(tr);}//显示所有的数据function showAllData() { db.transaction(function(tx) { tx.executeSql("CREATE TABLE IF NOT EXISTS MsgData(name TEXT,message TEXT,time INTEGER)", []); tx.executeSql("SELECT * FROM MsgData", [], function(tx, rs) { removeAllData(); for(var i = 0; i < rs.rows.length; i++) { showData(rs.rows.item(i)) } }) })}//添加数据function addData(name, message, time) { db.transaction(function(tx) { tx.executeSql("INSERT INTO MsgData VALUES (?,?,?)", [name, message, time], function(tx, rs) { alert("留言成功!"); }, function(tx, error) { alert(error.source + "::" + error.message); } ) })}//调用function saveData() { var name = document.getElementById("name").value; var memo = document.getElementById("memo").value; var time = new Date().getTime(); addData(name, memo, time); showAllData();}

我们有两个方法来进行软件设计:一个是让其足够的简单以至于让BUG无法藏身;另一个就是让其足够的复杂,让人找不到BUG。前者更难一些。

总结

以上所述是小编给大家介绍的HTML5操作WebSQL数据库的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章