簡體   English   中英

如何動態地將HTML塊添加到頁面中?

[英]How to add a HTML block dynamiclly into a page?

我需要添加這樣的塊。

<td valign="bottom" width="25%">
            <a href="/images/00000.jpg">
            <img width="150" height="100" src="http://farm4.static.flickr.com/3114/2524849923_1c191ef42e.jpg" border="0" alt="Click" title="Click"></a>
        </td>

我正在嘗試類似的東西。但是這里的td元素沒有附加圖像元素。

 var img = document.createElement("img");
        img.src = src;
        img.width = width;
        img.height = height;
        img.alt = alt;
        img.onclick=function () { alert(src); }; 
        td=td.appendChild(img);
        alert(td);
        document.body.appendChild(td);

這應該可以解決(它確實創建了所提到的結構):

td = document.createElement('td');
td.valign = 'bottom';
td.width = '25%';
a = document.createElement('a');
a.href = '/images/00000.jpg';
img = document.createElement('img');
img.width = '150';
img.height = '100';
img.border = '0';
img.alt = img.title = 'Click';
img.src = 'http://farm4.static.flickr.com/3114/2524849923_1c191ef42e.jpg';
a.appendChild(img);
td.appendChild(a);
document.body.appendChild(td);

演示: http//jsfiddle.net/TimWolla/PFVrG/

td=td.appendChild(img);

在這一行,你將td設置為appendChild操作的結果(將是圖像)。 刪除td=部分:

td.appendChild(img);

老問題,但最好的答案比上面寫的要容易得多。

  1. 創建一個臨時元素:

      var el = document.createElement('img'); el.id = 'tempID0'; 
  2. 將所述項目附加到您想要的任何位置

      document.body.appendChild(el); 
  3. 使用大塊HTML修改此元素的outerHTML

      document.getElementById('tempID0').outerHTML = '<td>.....</td>'; 

如果你正在使用jquery,你可以這樣做:

$('<td>....</td>').appendTo('#parent');

其中#parent是父html標記/容器的id。 如果您不希望將其作為最后一個子元素附加,還有一些更改的變體/方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM