Javascript 从数据库动态加载图片

Javascript 从数据库动态加载图片,javascript,Javascript,我想用javascript制作div,并将图片加载到这些单独的div中 然而,我得到的附加子项是未定义的 phpfile工作正常 var request = new XMLHttpRequest; request.open('GET' , url.com/phpfile, false); request.send(); if(request.status == 0) console.log(request.responseText); var picture; var obj = J

我想用javascript制作div,并将图片加载到这些单独的div中 然而,我得到的附加子项是未定义的

phpfile工作正常

var request = new XMLHttpRequest;
request.open('GET' , url.com/phpfile, false);
request.send();

if(request.status == 0)
    console.log(request.responseText);

var picture;
var obj = JSON.parse(request.responseText);
console.log(obj);
for (var i= 0 ;  i<obj.length; i++){
var div = document.createElement("target");
var img = document.createElement("IMG");
document.body.appendChild(div);
div.id= ('target'+i);
picture = obj[i].LastPicture;
img.src=picture;
document.getElementById(div).appendChild(img)
console.log(picture);
}
var请求=新的XMLHttpRequest;
open('GET',url.com/phpfile,false);
request.send();
if(request.status==0)
console.log(request.responseText);
var图;
var obj=JSON.parse(request.responseText);
控制台日志(obj);

对于(var i=0;i而言,在我看来存在许多问题:

  • 你不会等到回复回来
  • 您不能将div的src设置为字节数组(顺便说一句,您正在调用
    =
    ,而您的意思可能是
    =
  • 您的呼叫在
    正文
    上追加子项
  • ,而不是在
    文档

    我用了这样的方法:

    var img = document.createElement("IMG");
    img.src = "path_to_img";
    document.getElementById("some_id_from_body").appendChild(img);
    
    您需要记住document.createElement('target');不会将新创建的元素添加到文档中


    在您的示例document.body.appendChild('div')中,我认为应该是document.body.appendChild(div);,不带引号?

    您是否尝试过类似的方法:

    $("<img src='"+obj[i].picture+"'></img>").appendTo("#"+target+i);
    
    $(“”)。附加到(“#”+target+i);
    
    […]但是,我得到的附加子项未定义


    这是因为您无法将字符串传递给body
    .appendChild()
    函数。您可以使用
    document.createElement('div')
    创建一个div元素,并将其传递给
    。appendChild()

    您可以显示相关的html吗?另外,我认为存在一些语法问题(url,xmlhttprequest())。您缺少请求。onreadystatechange=function(){…}btw您得到的响应是什么?请尝试记录或提醒它。