处理SQL时出错:TypeError:window.openDatabase不是函数 [英] Error processing SQL: TypeError: window.openDatabase is not a function
问题描述
我在代码中有一些奇怪的问题。我已经创建了简单的 DB_Function.js
来管理html页面中的JS函数。
c $ c>< body onLoad =CALL_DB()> 所以首先将初始化数据库并在需要时创建表。
问题在这里,
- 工作:Chrome
- :Android Mobile& Fire Fox
代码如下:
DB_Function。 js
function CALL_DB(){
try {
alert(call_db) ;
var db = window.openDatabase(Database,1.0,Cordova Demo,200000);
db.transaction(populateDB,errorCB,successCB);
} catch(err){
alert(错误处理SQL:+ err);
}
}
function populateDB(tx){
try {
alert(call_table);
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(3,C)');
tx.executeSql('INSERT INTO DEMO(id,data)VALUES(4,K)');
} catch(err){
alert(错误处理SQL:+ err);
}
}
函数errorCB(tx,err){
alert(Error processing SQL:+ err);
}
//事务成功回调
function successCB(){
alert(success!
}
Test.html
$ b
<!DOCTYPE html>
< html>
< head>
< title>存储示例< / title>
< script type =text / javascriptcharset =utf-8src =cordova.js>< / script&
< script type =text / javascriptcharset =utf-8src =js / DB_function.js>< / script>
< / head>
< body onLoad =CALL_DB()>
< h1>示例< / h1>
< p>数据库< / p>
< / body>
< / html>
这里是我的 JS FIDDLE
请帮我,我不知道我在哪里错了。
感谢您阅读我的查询。 / p>
问题在这里,
< script type =text / javascriptcharset =utf-8src =cordova.js>< / script>
我有一个活的js文件加载,因此可能是他们无法加载,应用程序。
所以,我将它保存在 assets / www / js / cordova.js
p>
< script type =text / javascriptcharset =utf-8src =js / cordova.js>< / script>
I have some strange issue in my code. i have create simple DB_Function.js
to manage JS function inside html page.
i am calling function inside <body onLoad="CALL_DB()">
so first that will initialize the DB and create table if needed.
Issue is here ,
- Working : Chrome
- Not Working : Android Mobile & Fire Fox
Code are as below :
DB_Function.js
function CALL_DB() {
try {
alert("call_db");
var db = window.openDatabase("Database", "1.0", "Cordova Demo", 200000);
db.transaction(populateDB, errorCB, successCB);
} catch (err) {
alert("Error processing SQL: " + err);
}
}
function populateDB(tx) {
try {
alert("call_table");
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 (3, "C")');
tx.executeSql('INSERT INTO DEMO (id, data) VALUES (4, "K")');
} catch (err) {
alert("Error processing SQL: " + err);
}
}
function errorCB(tx, err) {
alert("Error processing SQL: " + err);
}
// Transaction success callback
function successCB() {
alert("success!");
}
Test.html
<!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" src="js/DB_function.js"></script>
</head>
<body onLoad="CALL_DB()">
<h1>Example</h1>
<p>Database</p>
</body>
</html>
Here is the my JS FIDDLE Please help me i don't know where i am wrong.
Thanks for read my query.
Issue was here,
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
I have address a live js file to load so might be they was not able to load while launch the application.
So, I have save it locally in assets/www/js/cordova.js
.
So finally it looks like above and its working for me perfectly.
<script type="text/javascript" charset="utf-8" src="js/cordova.js"></script>
这篇关于处理SQL时出错:TypeError:window.openDatabase不是函数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!