0

私のコードをチェックしてください:

var db = openDatabase("Despesas", "1.0", "Despesas DB", 2000000);
        db.transaction(createTbl, errorCB, successCB);

        function errorCB(err){
            alert('Error : ' + err.code);
        }
        function successCB(){
            console.log('DB CREATED!');
            db.transaction(queryDB, errorCB);
        }
        function createTbl(tx){
            tx.executeSql('DROP TABLE IF EXISTS ENTRIES');
            tx.executeSql('CREATE TABLE IF NOT EXISTS ENTRIES (id integer primary key autoincrement, entry TEXT NOT NULL)');

        }

        function callPopulate(){
            db.transaction(
                function populateDB(tx){        
                    var userInput = document.getElementById('user').value;
                    tx.executeSql('INSERT INTO ENTRIES (entry) VALUES (?)', [userInput]);
                    //tx.executeSql('INSERT INTO ENTRIES (entry) VALUES ("'+ userInput + '")');
                    //alert('Input ok');
                }, errorCB, successCB);


                }

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

function querySuccess(tx, results) {

    document.getElementById('list').innerHTML = '';
    var len = results.rows.length;      
    console.log("ENTRIES table: " + len + " rows found.");
    for (var i=0; i<len; i++){
        item = results.rows.item(i);
        console.log("Row = " + i + " ID = " + results.rows.item(i).id + " Data =  " + results.rows.item(i).data);
        document.getElementById('list').innerHTML += '<li>' + item.data + '</li>';
        console.log(item);
    }   
}

コンソールにログインitemしますが、保存されているオブジェクトが出力されます。を試しconsole.log(item.data)ましたが、期待した結果が得られないようです。これを修正して実際の値を返すにはどうすればよいですか? 私はクロムを使用しています。

4

1 に答える 1

1

テーブルに「データ」という列がないか、選択していないようです。

于 2013-04-05T05:17:51.103 に答える