我正在努力学习如何处理手机缺口。我做了一些sql教程,由于某些原因,它们都没有为我工作。他们刚刚完成了似乎按预期创建数据库。是否有我在某处遗失的设置或许可?
以下代码的结果如下:http://madebyjohann.com/curatio/addweight.html
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width;" />
<title>Open File</title>
<script type="text/javascript" src="xui.js"></script>
<script type="text/javascript" src="cordova-2.0.0.js"></script>
<script type="text/javascript" >
var fileObject;
document.addEventListener("deviceready", onDeviceReady, true);
function onDeviceReady() {
window.requestFileSystem(LocalFileSystem.PERSISTENT, 0, onFileSystemSuccess, fail);
}
function onFileSystemSuccess(fileSystem) {
fileSystem.root.getFile("readme.txt", {create: true, exclusive: false}, gotFileEntry, fail);
}
function gotFileEntry(fileEntry) {
fileObject = fileEntry;
x$('#saveFile_btn').on('click', function() {
saveFileContent();
});
}
function gotFileWriter(writer) {
var myText = document.getElementById('my_text').value;
writer.write(myText);
writer.onwriteend = function(evt) {
x$('#message').html('<p>File contents have been written.<br /><strong>File path:</strong> ' + fileObject.fullPath + '</p>');
var reader = new FileReader();
reader.onload = function(evt) {
x$('#contents').html('<strong>File contents:</strong> <br />' + evt.target.result);
};
reader.readAsText(fileObject);
};
}
function saveFileContent() {
fileObject.createWriter(gotFileWriter, fail);
}
function fail(error) {
alert(error.code);
}
</script>
</head>
<body>
<input type="text" id="my_text" />
<input type="button" id="saveFile_btn" value="Save" />
<div id="message"></div>
<div id="contents"></div>
</body>
</html>
答案 0 :(得分:1)
<强> 1)强>
首先,您的代码不能使用SQL或任何数据库。
您正在使用的是文件系统。两件不同的事情。
<强> 2)强>
您无法在浏览器中执行phonegap代码。您需要创建一个应用程序。
第3)强>
您发布的网站上的代码与您问题中的代码相同。我只会回答你在这个问题上发布的内容。
http://docs.phonegap.com/en/3.1.0/cordova_storage_storage.md.html#Storage
请阅读上面的链接以使用localstorage API。
此外,这里有一个教程,你可以阅读,学习phonegap并开始使用它。
http://mobile.tutsplus.com/tutorials/phonegap/phonegap-from-scratch/
这只是一个复制粘贴:
<!DOCTYPE html>
<html>
<head>
<title>Storage Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// device APIs are available
//
function onDeviceReady() {
var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
db.transaction(populateDB, errorCB, successCB);
}
// Populate the database
//
function populateDB(tx) {
tx.executeSql('DROP TABLE IF EXISTS DEMO');
tx.executeSql('CREATE TABLE IF NOT EXISTS DEMO (id unique, data)');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (1, "First row")');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (2, "Second row")');
}
// Transaction error callback
//
function errorCB(tx, err) {
alert("Error processing SQL: "+err);
}
// Transaction success callback
//
function successCB() {
alert("success!");
}
</script>
</head>
<body>
<h1>Example</h1>
<p>Database</p>
</body>
</html>