此代码示例与phonegap有关。我在for
循环内打印时遇到问题。
知道为什么会这样吗?
var html = "<table id='tableData' border='1'><tr><td>ID</td><td>Data</td></tr>";
var len = results.rows.length;
for (var i=0; i<=len; i++){
html += "<tr><td>" + results.rows.item(i).id + "</td>";
html += "<td>" + results.rows.item(i).data + "</td></tr>";
}
html += "</table>";
$('#content').html(html);
答案 0 :(得分:2)
您还没有说 问题,但这一行可能不正确:
for (var i=0; i<=len; i++)
您可能需要<
,而不是<=
:
for (var i=0; i<len; i++)
...因为使用原始代码,i
会从0
转到len
包含,所以如果您有(比方说)五行,在最后一个循环中,您将尝试访问result.rows.item(5)
,这是第六个项,假设result.rows.item(0)
是第一个项目(这将是相当标准的)。数组和集合要么来自0..length-1
,要么来自1..length
,具体取决于0..length-1
,但这取决于result.rows
是什么。