无法使用ajax从数据库中检索信息。我从这里得到了代码:
我从包含以下php的表中获取所有内容:
$result = mysql_query("SELECT * FROM voterecords");
$data = array();
while ( $row = mysql_fetch_row($result) )
{
$data[] = $row;
}
echo json_encode($data);
如果我导航到那个php页面,输出以下内容:
[["68","1234","0","1234",""],["69","added with ajax","0","this item was added using ajax",""]]
以上格式如下: id,title,votes,description,owner
我认为这一切都有效,但我无法确定,因为我不知道JSON应该是什么样的。
好了,现在这里是jquery,它应该从JSON中检索信息并将其放入html元素#output
$(function ()
{
$.ajax({
url: 'retrieve.php', data: "", dataType: 'json', success: function(rows)
{
for (var i in rows)
{
var row = rows[i];
var id = row[0];
var name = row[1];
var votes = row[2];
var info = row[3];
$('#output').append("<b>id: </b>"+id+"<b> name: </b>"+name+"<b> votes: </b>"+votes+"<b> info: </b>"+info)
.append("<hr />");
}
}
});
我原以为这会输出所有信息,但没有任何反应。
答案 0 :(得分:0)
您的代码很好,除非您在回调函数中缺少结束)
。
此外,在JavaScript中,最好将开口大括号放在同一行,而不是在下一行,就像在其他一些语言中一样。
更正/清理代码:
$(function () {
$.ajax({url: 'retrieve.php', dataType: 'json'}).done(function(rows) {
for (var i in rows) {
var row = rows[i];
var id = row[0];
var name = row[1];
var votes = row[2];
var info = row[3];
$('#output')
.append("<b>id: </b>"+id+"<b> name: </b>"+name+"<b> votes: </b>"+votes+"<b> info: </b>"+info)
.append("<hr />");
}
});
});