1

我尝试并从这里复制代码:http: //luthfihariz.wordpress.com/2011/10/23/android-sqlite-phonegap-jquerymobile/ 为了成功使用我正在研究的示例来学习这一点。我有一个指向我在 pastebin 上的完整 index.html 的链接。

请纠正我并帮助我找到这个错误。

在此处链接到 Pastebin

4

1 回答 1

5

我没有太多时间,马上就是圣诞节了 :) 但是.. :) 我确实用你的代码作为初学者写了一个工作示例。

使用 Cordova 版本 2.2.0 使用 PhoneGap 进行编译 我确实在 android 设备上对其进行了测试,我确实在这里和那里更改了一些东西,但我使用了来自这里的代码作为参考。

document.addEventListener("deviceready", onDeviceReady, false);

var db = "";

function populateDB(tx) {
    tx.executeSql('DROP TABLE IF EXISTS SoccerPlayer');
    tx.executeSql('CREATE TABLE IF NOT EXISTS SoccerPlayer (Name TEXT NOT NULL, Club TEXT NOT NULL)');
    tx.executeSql('INSERT INTO SoccerPlayer(Name,Club) VALUES ("Alexandre Pato", "AC Milan")');
    tx.executeSql('INSERT INTO SoccerPlayer(Name,Club) VALUES ("Van Persie", "Arsenal")');
}

function queryDB(tx) {
    tx.executeSql('SELECT * FROM SoccerPlayer', [], querySuccess, errorCB);
}


function querySuccess(tx,result){
        var playerlist = document.getElementById("SoccerPlayerList");
        var players = "";
        alert("The show is on");
        var len = result.rows.length;
        for (var i=0; i<len; i++){
            alert(result.rows.item(i).Name + result.rows.item(i).Club);
            players = players + '<li><a href="#"><p class="record">'+result.rows.item(i).Name+'</p><p class="small">Club '+result.rows.item(i).Club+'</p></a></li>';
        }   

        playerlist.innerHTML = players;
        $("#SoccerPlayerList").listview("refresh");
}


function errorCB(err) {
    alert("Error processing SQL: "+err.code);
}


function successCB() {
    db.transaction(queryDB, errorCB);
}


function onDeviceReady() {
    db = window.openDatabase("Database", "1.0", "PhoneGap Demo", 200000);
    db.transaction(populateDB, errorCB, successCB);
}
于 2012-12-20T18:18:31.943 回答