基本上我想做的是返回mysql查询的结果。我知道如何将查询结果的每一行放入其自己的JSON对象中,现在我正在努力寻找一种方法,以便在有多行结果将其返回给我的jquery时使用。在我的jquery中,我调用了$ .ajax()函数,对此我没有任何问题。我的问题在于成功部分,我希望能够执行以下操作:
$.ajax ({ type: "POST", url:"select.php", data: {columns : "*", table : "tbUsers", conditions : "" }, success: function(results) { foreach (results as obj) { JSON.parse(obj); $("#page").html(obj.id + " " + obj.name); } } });
我希望能够像JSON对象数组一样遍历结果变量。结果变量是一个字符串,由php文件的所有输出组成。因此,让我的问题变成是,如何更改它以使函数获得数组,或者如何将其更改为一个?
我的php文件当前返回如下内容:
[{"0":1, "1":"name1", "id":1, "name":"name1"} , {"0":2, "1":"name2", "id":2, "name":"name2"}]
从php你可以使用
php
echo json_encode($result); // result may contain multiple rows
在success回调中,您可以使用
success
success: function(results) { var htmlStr = ''; $.each(results, function(k, v){ htmlStr += v.id + ' ' + v.name + '<br />'; }); $("#page").html(htmlStr); }
一个可以帮助您理解的演示 。