如何在phonegap应用程序for iphone的javascript中读取sqlite3中的数据

How to read the data from sqlite3 in javascript in phonegap application for iphone

本文关键字:javascript sqlite3 数据 读取 iphone phonegap 应用程序 for      更新时间:2023-09-26

我正在为iphone开发phonegap中的一个应用程序,我在sqlite3中有一个数据库,其中包含纬度和经度的值以及相应的区域名称。我已经在应用程序中复制了sqlite数据文件。我需要从sqlite中获取数据,并在视图中的表中显示数据,那么如何在javascript中获取数据呢?

@PiTheNumber尝试该代码

         var arr = new Array(); 
        // Wait for PhoneGap to load
        //
        document.addEventListener("deviceready", onDeviceReady, false);
        // 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")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (3, "First row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (4, "Second row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (5, "First row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (6, "Second row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (7, "First row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (8, "Second row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (9, "First row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (10, "Second row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (11, "First row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (12, "Second row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (13, "First row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (14, "Second row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (15, "First row")');
            tx.executeSql('INSERT INTO DEMO (id, data) VALUES (16, "Second row")');
        }

        // Query the database
        //
        function queryDB(tx) {
            tx.executeSql('SELECT * FROM DEMO', [], querySuccess, errorCB);
        }
        // Query the success callback
        //
        function querySuccess(tx, results) {
            var len = results.rows.length;
            console.log("DEMO table: " + len + " rows found.");
            for (var i=0; i<len; i++){
            $('#home').append('<li><a href="#artists">'+results.rows.item(i).data+'</a></li>');

            }
            console.log("aaa"+arr+"aaa"); 
        }
        // Transaction error callback
        //
        function errorCB(err) {
            console.log("Error processing SQL: "+err.code);
        }
        // Transaction success callback
        //
        function successCB() {
            var db = window.openDatabase("Database", "1.0", "PhoneGap Demo", 200000);
            db.transaction(queryDB, errorCB);
        }
        // PhoneGap is ready
        //
        function onDeviceReady() {
            var db = window.openDatabase("Database", "1.0", "PhoneGap Demo", 200000);
            db.transaction(populateDB, errorCB, successCB);
        }

@sasha用phonegap.4.1.js 替换phonegap.js"文件的引用

(如果你使用的是1.4.1版本的phone gap),它会起作用。

@InderKumarRathore伙计我刚刚想明白了这是我的表格视图,或者你可以说是列表视图

        <body>
            <div class="toolbar">
                <h1 id="pageTitle"></h1>
                <a id="backButton" class="button" href="#"></a>
                <a class="button" href="#searchForm">Search</a>
            </div>
            <ul id="home" title="Music" selected="true">
                <li><a href="#artists">Artists</a></li>
                <li><a href="#settings">Settings</a></li>
                <li><a href="stats.gtpl">Stats</a></li>
                <li><a href="#themes">Theme Switcher</a></li>
                <li><a href="#iui-cache-panel">HTML5 WebApp Cache</a></li>
                <li><a href="http://code.google.com/p/iui/" target="_self">About</a></li>
                <li>Nothing</li>
            </ul>    </body>

在Java脚本中使用此代码

$('#home').append('<li>'+data+'</li>');

数据将是你想要使用的变量

希望它对我有用!!!!

干杯