詳細(xì)說(shuō)明HTML5如何設(shè)置WebSQL數(shù)據(jù)庫(kù)
發(fā)表時(shí)間:2024-01-03 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]下面通過(guò)本文給大家分享HTML5操作WebSQL數(shù)據(jù)庫(kù)的實(shí)例代碼,感興趣的朋友一起看看吧HTML代碼:<!DOCTYPE html><html><head lang="en"><meta charset="UTF-8"...
下面通過(guò)本文給大家分享HTML5操作WebSQL數(shù)據(jù)庫(kù)的實(shí)例代碼,感興趣的朋友一起看看吧
HTML代碼:
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title>列車時(shí)刻表查詢</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()">
<p data-role="page" id="pageone">
<p data-role="header" data-position="fixed">
<h1>列車時(shí)刻表查詢</h1>
</p>
<p data-role="main" class="ui-content">
<p align="center">請(qǐng)給我留言</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">
<!--這里是留言板的顯示區(qū)域-->
</table>
</p>
<!--
作者:ceet@vip.qq.com
時(shí)間:2017-08-26
描述:底部TAB
-->
<p data-role="footer" data-position="fixed">
<p 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>
</p>
</p>
<!--收藏功能-->
<p 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>請(qǐng)點(diǎn)擊右上角有個(gè)關(guān)閉按鈕</p>
<p><b>提示:</b> 你也可以點(diǎn)擊彈窗的外部區(qū)域來(lái)關(guān)閉彈窗。</p>
</p>
</p>
</body>
</html>
JS代碼:
/**
* HTML5 操作本地WebSQL數(shù)據(jù)庫(kù)
* 作者:汪政
* 時(shí)間:2017/08/26 15:03:19
*/
var datatable = null;
var db = openDatabase("MyData", "", "My Database", 1024 * 100);
//初始化函數(shù)方法
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 = "時(shí)間";
tr.appendChild(th1);
tr.appendChild(th2);
tr.appendChild(th3);
datatable.appendChild(tr);
}
//顯示W(wǎng)ebSQL中的數(shù)據(jù)
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);
}
//顯示所有的數(shù)據(jù)
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))
}
})
})
}
//添加數(shù)據(jù)
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);
}
)
})
}
//調(diào)用
function saveData() {
var name = document.getElementById("name").value;
var memo = document.getElementById("memo").value;
var time = new Date().getTime();
addData(name, memo, time);
showAllData();
}
我們有兩個(gè)方法來(lái)進(jìn)行軟件設(shè)計(jì):一個(gè)是讓其足夠的簡(jiǎn)單以至于讓BUG無(wú)法藏身;另一個(gè)就是讓其足夠的復(fù)雜,讓人找不到BUG。前者更難一些。
以上就是詳解HTML5如何操作WebSQL數(shù)據(jù)庫(kù)的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語(yǔ),涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。