【问题标题】:Adding values dynamically to the table in Web SQL database using javascript使用 javascript 向 Web SQL 数据库中的表动态添加值
【发布时间】:2014-08-28 18:05:08
【问题描述】:

我正在从 Web 服务中获取值。我必须将这些值插入到 Web SQL 数据库的表中。

我有 4 条记录。我在循环中插入了以下代码,但数据库中只添加了最后一条记录,而不是前3条记录。

for(var t=0;t<main_category.length;t++){
        db.transaction(function(tx){
            var insertStatement="INSERT INTO main_menu(catId,catName,catImage) VALUES(?,?,?)";
            tx.executeSql(insertStatement, [menu_id, menu_name, menu_img]);
            console.log("values inserted "+ t);
        });
}

我尝试了很多解决方案,以下链接有其中之一,

Web SQL Database + Javascript loop

但是,它没有用。请建议我如何使用动态值填充表格。

【问题讨论】:

    标签: javascript html web-sql


    【解决方案1】:

    试试这个:

    for(var t = 0; t < main_category.length; t++){
            (function(i) {
                var item = main_category[i];
                var menu_id = item.id, menu_name = item.name, menu_img = item.img;
                db.transaction(function(tx) {
                    var insertStatement="INSERT INTO main_menu(catId,catName,catImage) VALUES(?,?,?)";
                    tx.executeSql(insertStatement, [menu_id, menu_name, menu_img]);
                    console.log("values inserted "+ i);
                });
            })(t);
    }
    

    结果:

    【讨论】:

    • 但是这些值没有被插入到数据库的表中。
    • 我正在处理这段代码.. puu.sh/a1Lds/d72bb5e8d3.png ,那么您使用的是哪个浏览器?
    • 啊!做了细微的改变,它的工作只是 catNames 和 catImages 有问题,所有值都被插入第一行,然后在第二行减 1,依此类推。
    猜你喜欢
    • 1970-01-01
    • 2013-06-10
    • 2017-06-10
    • 2011-06-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-04-03
    相关资源
    最近更新 更多