Javascript 无法从JSON数据生成html
我正在尝试使用JSON数据(从PHP返回)创建HTML以显示给客户端 我在一个函数中得到了这个,这个函数也用于填充谷歌地图Javascript 无法从JSON数据生成html,javascript,jquery,json,Javascript,Jquery,Json,我正在尝试使用JSON数据(从PHP返回)创建HTML以显示给客户端 我在一个函数中得到了这个,这个函数也用于填充谷歌地图 function searchLocationsNear(center) { //some AJAX that's working fine// success:function(data, response){ console.log(data); var markerNodes = data; var bounds = new google.maps.Lat
function searchLocationsNear(center) {
//some AJAX that's working fine//
success:function(data, response){
console.log(data);
var markerNodes = data;
var bounds = new google.maps.LatLngBounds();
for (var i = 0; i < markerNodes.length; i++) {
var uid = markerNodes[i].id;
var name = markerNodes[i].name;
var address = markerNodes[i].address;
var distance = parseFloat(markerNodes[i].distance);
var avatar = markerNodes[i].avatar;
var bio = markerNodes[i].bio;
var rate = markerNodes[i].price;
var latlng = new google.maps.LatLng(
parseFloat(markerNodes[i].lat),
parseFloat(markerNodes[i].lng));
createOption(name, distance, i);
createMarker(latlng, name, avatar, uid, bio, rate);
bounds.extend(latlng);
var html = "<div style='float:left; padding-right:10px;'><img src='user/"+uid+"/"+avatar+"'s alt='Tutor - "+name+" Profile Picture'></div><div class='infowindow'><h3>" + name + "</h3><hr><h4>Rate: "+rate+"</h4>"+bio+"</div>";
console.log(html);
$('#thumblist').html(html);
console.log($('#thumblist'));
}
函数搜索位置近(中){
//一些工作正常的AJAX//
成功:功能(数据、响应){
控制台日志(数据);
var markerNodes=数据;
var bounds=new google.maps.LatLngBounds();
对于(变量i=0;i速率:“+Rate+”“+bio+”;
log(html);
$('#拇指列表').html(html);
console.log($(“#拇指列表”);
}
这张谷歌地图填充得很好,console.log($(“#thumblist'))显示了我需要显示的两个条目,但只有一个条目附加到了#thumblist(最后一个)。有人能帮忙吗?您是否使用$('#thumblist').html(html);将html分配给该元素?如果是,您正在用$('#thumblist编写html)每次将var html分配给它时。是否可以使用append()或after()?这样就不会替换thumblist中的html。您在每次迭代中都会覆盖
#thumblist
html。相反,您应该附加:
$('#thumblist').append(html);
.html()
将覆盖元素的整个内容,而.append()
将保持当前内容不变,只添加到末尾。是否设置了数据类型:“json”?@pvnarula-yes-奇怪的是,映射显示了这两个对象,函数一开始的console.log也显示了这两个对象,但只有一个进入了html变量