我在一个"find name“页面上工作--用户输入一个或多个字母,这些字母通过ajax传递给服务器,服务器查询一个db,db返回一个包含这些字母的json数组(我昨天学会了怎么做),然后我把这个列表发布到一个div中。
例如:用户输入"wa“,返回"George Washington”(所有姓氏都带有"wa")。
服务器端的PHP代码工作得很好--我单独测试过它,它以正确的json格式返回所有正确的名称。
客户端工作得很好,但是!我使用了一种“蛮力”技术,看看是否可以通过使用jQuery ().html()命令(这是我唯一能用到的命令--我尝试过.val、.data和其他一堆将数组放入div中的方法)来将数组放入div中。
下面是将json数组放入div的代码。是的,正确,它很难看--但只要数组的大小是>=15 (我的"html“中的行数--否则不会在div中发布任何内容),它就可以工作。
$.ajax({//------------------------start of ajax---------------------------------->
type: "POST",
url: "findpatientbackend.php",
data: {letterslastname: lastname},
dataType : 'json',
success: function(result) {$("#div1").html(
"----" + result[0].localid + "--------------" + result[0].lastname + "-------------" + result[0].firstname + "<br>" +
"----" + result[1].localid + "--------------" + result[1].lastname + "-------------" + result[1].firstname + "<br>" +
"----" + result[2].localid + "--------------" + result[2].lastname + "-------------" + result[2].firstname + "<br>" +
"----" + result[3].localid + "--------------" + result[3].lastname + "-------------" + result[3].firstname + "<br>" +
"----" + result[4].localid + "--------------" + result[4].lastname + "-------------" + result[4].firstname + "<br>" +
"----" + result[5].localid + "--------------" + result[5].lastname + "-------------" + result[5].firstname + "<br>" +
"----" + result[6].localid + "--------------" + result[6].lastname + "-------------" + result[6].firstname + "<br>" +
"----" + result[7].localid + "--------------" + result[7].lastname + "-------------" + result[7].firstname + "<br>" +
"----" + result[8].localid + "--------------" + result[8].lastname + "-------------" + result[8].firstname + "<br>" +
"----" + result[9].localid + "--------------" + result[9].lastname + "-------------" + result[9].firstname + "<br>" +
"----" + result[10].localid + "--------------" + result[10].lastname + "-------------" + result[10].firstname + "<br>" +
"----" + result[11].localid + "--------------" + result[11].lastname + "-------------" + result[11].firstname + "<br>" +
"----" + result[12].localid + "--------------" + result[12].lastname + "-------------" + result[12].firstname + "<br>" +
"----" + result[13].localid + "--------------" + result[13].lastname + "-------------" + result[13].firstname + "<br>" +
"----" + result[14].localid + "--------------" + result[14].lastname + "-------------" + result[14].firstname
)},
error : function() { alert("error on return"); }
});所以,现在来回答我的问题。在这种情况下-在jQuery命令中,在ajax调用中,使用"resultx.variable“解析json数组-执行"while”循环的最佳方式是什么,该循环将数据放入div中,并根据正确的行数“自我调整”。
再次,我要提前感谢您的帮助。
编辑:这是带有“未定义”的输出。
undefined----133--------------Adams-------------John
----146--------------Alighieri-------------Beatrice
-154-Sh
-153
----160--------------Canton-------------Daniel
-162
发布于 2013-06-30 22:30:40
var output = "";
$.each(result, function(index, value) {
output += "----" + value.localid + "--------------" + value.lastname + "-------------" + value.firstname + "<br>";
});检查是否有15个或更多结果- result.length >= 15。
因此,最终的代码将如下所示:
$.ajax({//------------------------start of ajax---------------------------------->
type: "POST",
url: "findpatientbackend.php",
data: {letterslastname: lastname},
dataType : 'json',
success: function(result) {
if(result.length >= 15) {
var output = "";
$.each(result, function(index, value) {
output += "----" + value.localid + "--------------" + value.lastname + "-------------" + value.firstname + "<br>";
});
$("#div1").html(output);
}
},
error : function() { alert("error on return"); }
});https://stackoverflow.com/questions/17391361
复制相似问题