更新查询在Phonegap中不起作用

时间:2014-05-03 04:31:59

标签: android cordova

我正在开发一个与在线存储同步的phonegap应用程序。为此我需要更新查询。我写了但没有按预期工作。在这里,我已经提供了从json数据更新的代码。

function SyncUpdate(id)
{
    db.transaction(syncUpdateData);
    alert("SyncUpdate Called..."+id);
    function syncUpdateData(tx)
    {
        //alert(id);
        $.post("http://testwebsite.com/DailyWord/GetWordByID.php",{ID:id},function(data){
        var json = $.parseJSON(data);
            $.each(json, function() 
            {
            alert('UPDATE DW_Words SET word="'+this['Word']+'",explanation="'+this['Explanation']+'",usage="'+this['Usage']+'",tags="'+this['Tags']+'",date="'+this['Date']+'" WHERE id="'+this['ID']+'"');
            tx.executeSql('UPDATE DW_Words SET word="'+this['Word']+'",explanation="'+this['Explanation']+'",usage="'+this['Usage']+'",tags="'+this['Tags']+'",date="'+this['Date']+'" WHERE id="'+this['ID']+'"');
            });
            alert('Update Query Fiured');           
        });

    }
}

这里我正在接收来自json的数据和变量id的值。请帮我这样做。

1 个答案:

答案 0 :(得分:1)

有时候,操作顺序会混合这些东西,我会尝试更像这样的东西:

function SyncUpdate(id)
{
    $.post("http://testwebsite.com/DailyWord/GetWordByID.php",{ID:id},function(data){
        var json = $.parseJSON(data);
        var len = json.length;
        db.transaction(function(tx){
            for(var i = 0; i < len; i++) {
                tx.executeSql('UPDATE DW_Words SET word="'+json[i]['Word']+'",explanation="'+json[i]['Explanation']+'",usage="'+json[i]['Usage']+'",tags="'+json[i]['Tags']+'",date="'+json[i]['Date']+'" WHERE id="'+json[i]['ID']+'"');
            }
        });
    });
}