【问题标题】:How to send an HTML5 sqlite result set to a server via AJAX如何通过 AJAX 将 HTML5 sqlite 结果集发送到服务器
【发布时间】:2011-09-10 14:18:42
【问题描述】:

假设我得到这样的结果集:

db.transaction( 
    function(transaction) { transaction.executeSql( 
    'SELECT col1, col2, col3 FROM table;',
     [],function(transaction, result){

     //package the result in here somehow to send to the server via AJAX

},errorHandler);

我正在寻找特定代码(而不是说“序列化结果”),以寻找将结果“打包”以通过 AJAX 发送到服务器的最佳方式。 JQuery 解决方案很好。

【问题讨论】:

    标签: javascript ajax sqlite html


    【解决方案1】:

    在JS中序列化有一个常用的解决方案:

    JSON.stringify(result);
    

    【讨论】:

    • 这将作为var row = result.rows.item(i); JSON.stringify(row) 处理每一行,但不能直接作为JSON.stringify(result)。分别对每一行进行字符串化后,我应该如何将它们组合成一个 JSON 对象?
    • 可以将所有行放到正则数组中,然后序列化这个数组。
    • 如果我在循环中执行resultSet[i] = JSON.stringify(row); 之类的操作,那么console.log(resultSet);' returns ["{"id":1}", "{"id":2}"]`。我可以直接通过 AJAX 发送此表单吗?
    • 我可以,但是在服务器上解析这些数据会很困难。我建议您在循环中使用resultSet[i] = row,然后再使用JSON.stringify(resultSet)。在服务器上你可以JSON.parse(data)
    猜你喜欢
    • 2021-10-13
    • 1970-01-01
    • 2013-11-04
    • 1970-01-01
    • 1970-01-01
    • 2018-02-27
    • 2017-01-26
    • 1970-01-01
    • 2019-11-10
    相关资源
    最近更新 更多