如何使用JavaScript将图像添加到页面中的现有表

时间:2015-06-24 12:47:36

标签: javascript jquery

我使用下面的函数来创建图像。我发送了两个变量:一个用于图像的源链接,另一个用于嵌入表中的位置。实际上,我想首先创建一个div然后将图像保存在表格的“td”内,然后在div之后添加“br”标签,以便现有的“td”内容出现在下一行。

function createimage(src, k){
    console.log("got source as "+src);
    var img = document.createElement('img');
    img.setAttribute('width','200px');
    img.setAttribute('height','300px');
    img.src = src;
    img.setAttribute ('class', 'extarimages');
    document.getElementById("#destination tr:eq(1) td:eq("+(k+2)+")").appendChild(img);
    
    var mybr = document.createElement('br');
    document.getElementById("#destination tr:eq(1) td:eq("+(k+2)+")").appendChild(mybr);
}

有人可以帮助我吗

2 个答案:

答案 0 :(得分:0)

您将dom查询作为参数传递给document.getElementById(),这是不允许的。如果你想做dom查询,请使用jQuery或类似的javascript框架。

jQuery示例:

$img = $('<img>').attr('src', src).attr('width', '200').attr('height', '300');    
$("#destination tr:eq(1) td:eq("+(k+2)+")").append($img);

答案 1 :(得分:0)

这就是我的方式:

使用Javascript:

function createimage(src, k){
    console.log("got source as "+src);
    var img= $(document.createElement('img'))
        .prop('src', src)
        .addClass("extarimages img-size");
    var tableCell = $("#destination tr:eq(1) td:eq("+(k+2)+")");
    $(tableCell).prepend(document.createElement('br'));
    $(tableCell).prepend(image);
}

CSS:

.img-size {
    width: 200px;
    height: 300px;
  }

注意:

您可以创建此新类,或只在现有的 extarimages 类中添加宽度和高度。

如果你使用&lt; JQuery 1.6使用 attr()而不是 prop()