如何存储数据来自服务器到phonegap中的数据库

时间:2014-02-08 08:09:54

标签: javascript jquery json jquery-mobile cordova

function storeData() {
    $.ajax({
        url: "http://www.json-generator.com/j/bKQdCWJSKW?indent=4",
        type: "GET",
        accepts: "utf-8",
        dataType: "json",
        success: function (data) {
            var db = window.openDatabase("test", "1.0", "test", 1000000);
            db.transaction(function (tx) {
                tx.executeSql('CREATE TABLE IF NOT EXISTS SEARCHRESULT (id INTEGER PRIMARY KEY    AUTOINCREMENT,  data1,data2)');
                $.each(data.employe, function (ind, values) {
                    navigator.notification.alert("successful" + [values.firstName]);
                    tx.executeSql('INSERT INTO SEARCHRESULT (data1,data2) VALUES (?,?);', [values.firstName], [values.lastName]);
                });
            }, errorResult, successResultStoreData);
        }
    });
}

在上面的示例中,我从服务器获取数据,这是多条记录我正确获取数据,但我无法存储在数据库中。如何解决这个问题?

3 个答案:

答案 0 :(得分:0)

您可以将整个对象放在本地存储中。

window.localStorage.setItem(key, value);

唯一一次不起作用的是你需要查询它。

答案 1 :(得分:0)

尝试直接使用

tx.executeSql('INSERT INTO SEARCHRESULT (data1,data2 ) VALUES ("' + values.firstName + '","' + values.lastName + '")');

答案 2 :(得分:0)

参数值应在数组中提供,如

tx.executeSql('INSERT INTO SEARCHRESULT (data1,data2) VALUES (?,?);', 
              [values.firstName, values.lastName]);

问候。