簡體   English   中英

使用 javascript 在 html 表中創建鏈接

[英]Create link in an html table with javascript

我正在使用以下代碼將列動態添加到 html 表中:

var tblHeadObj = window.opener.document.getElementById("maintable").tHead;
var j=0;
while(j < fname.length)
{ 
  if(tblHeadObj != null) 
  {
    for(var h = 0; h < tblHeadObj.rows.length; h++) 
    {
      var newTH = window.opener.document.createElement('th');

      tblHeadObj.rows[h].appendChild(newTH);
      //newTH.innerHTML='[th]row:'+h+'cell:'+(tblHeadObj.rows[h].cells.length-1)
    }
  }
  var tblBodyObj = window.opener.document.getElementById("maintable").tBodies[0];
  //for(var i = 0; i < tblBodyObj.rows.length; i++) {
  var newCell=tblBodyObj.rows[0].insertCell(-1);
  var newCell=tblBodyObj.rows[0].insertCell(-1);
  // newCell.innerHTML = (tblBodyObj.rows[0].cells.length - 1)
  newCell.innerHTML=  fname[j];
  j++;
}

現在我想將列作為鏈接​​。我該怎么做?

謝謝

正如其他人所指出的,“將列設為鏈接”是什么意思還不清楚。 然而,我們作為一個社區已經習慣於對真正的問題進行猜測並根據該假設提供解決方案。 隨着我們在處理越來越多不清楚的問題方面獲得經驗,我們的 ESP 技能變得更加磨練。

您似乎正在通過 DOM 方法創建 HTML 表。 我假設您想在創建的表格單元中創建一個鏈接,這是我的建議:

使用相同的createElement方法創建您需要的任何元素。 例如,可以使用以下代碼創建鏈接(錨點):

var link = document.createElement("a");
link.setAttribute("href", "http://www.microsoft.com")
link.className = "someCSSclass";
// For IE only, you can simply set the innerText of the node.
// The below code, however, should work on all browsers.
var linkText = document.createTextNode("Click me");
link.appendChild(linkText);

// Add the link to the previously created TableCell.
newCell.appendChild(link);

或者,您也可以按照@Anonymous 的建議設置 TableCell 的 innerHTML。

如果您嘗試將單元格內容放入錨點,那么一種方法是更改

newCell.innerHTML=  fname[j];

newCell.innerHTML=  '<a href="'+whatever+'">'+fname[j]+'</a>';

whatever持有適當字符串的變量。

請注意fname[j]的內容都是內聯的(例如,不是表格或塊,如 div、標題、表單——但表單輸入是可以的),否則大多數瀏覽器會過早關閉錨點。 如果需要,您可以只將錨點放在單元格內容的部分周圍,但最簡單的方法將取決於內容是什么。

這一切都很好,但我需要鏈接中的圖像,所以這里是代碼:

  cell[k] = document.createElement('td');
   var link = document.createElement('a');
            link.setAttribute('href', "http://www.ilovethismusic.com");
            link.setAttribute('target', "_blank");

            var newimg = document.createElement('img');
            newimg.src = "http://www.ilovethismusic.com/Views/Images/bg_header.jpg";
            newimg.alt = "imageMissing";
            newimg.width = "95";
            newimg.height = "45";
            newimg.border = "0";

            link.appendChild(newimg);




        cell[k].appendChild(link);

暫無
暫無

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

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