从数据库动态加载图片

dynamically loading in pictures from database

本文关键字:加载 动态 数据库      更新时间:2023-09-26

我想让div与javascript和图片加载到这些单独的div然而,我得到append child is undefined

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 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);,没有引号?

我觉得有很多问题:

  1. 不需要等待响应返回;
  2. 您不能将div的src设置为字节数组(顺便说一句,您正在调用==,而您可能意味着=);
  3. 呼叫appendChildbody,而不是document

您试过这样做吗:

$("<img src='"+obj[i].picture+"'></img>").appendTo("#"+target+i);

[. .

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