0

我在这里玩得很开心。这似乎很容易,但我无法让它工作。我的目标是在另一个 TD 之后插入/追加/追加一个 TD ......所以你会有..

<table>
<tr>
<td class="eve"></td>
<td class="mo"></td>
</tr>
</table>

简单吧?呐。

这是我的代码。

  var r = new Element('tr',{'class':'trclass'});
  var td2 = new Element('td',{'class':'mo'});
  var artDiv = new Element('div',{'class':'summary'});
  var td = new Element('td',{'class':'eve'});
  var div = new Element('div',{'class':'pad1','style':'overflow=hidden'});

我设置了一些元素。

   div.innerHTML = '<a href="' + disp.link + '" class="Link">somelink</a>';
artDiv.innerHTML = '<a href="'+ disp.link +'" class="url">' + disp.name  +'</a>';
td2.innerHTML = '<div class="pad1"><a href="' + disp.link + '" class="mo">' + disp.linkName  +'</a></div>';

  div.appendChild(artDiv);
   td.appendChild( div );
    r.appendChild(td);
    r.appendChild(td2)

我尝试过仅使用原型,仅使用 jquery 等。当我尝试在控制台中执行此操作时,我可以让它工作。但是当它坐在页面中时,无论我做什么......

我明白了:

<table>
<tr>
<td class="mo"></td> <-- THIS should be last TD, but no matter what, always goes first.
<td class="eve"></td>  
</tr>
</table>
4

2 回答 2

1

您想要 jQuery 或原型中的解决方案吗?

使用 jQuery,一个简单的解决方案是首先将 id/class 添加到您的表中。在那之后,它是非常直截了当的:

$(function() {
  var tdElement = "<td class='eve'></td>"; //the element you are inserting

  //lets say your table class is 'foo'
  $('.foo > tr').append(tdElement);
});

现在这是假设你只有一排。但这会将 tdElement 附加到 tr 元素。

于 2012-09-22T02:50:11.233 回答
1

如果您可以在创建 TR 时为其分配一个 ID,那么您应该能够使用 jQuery 以一种非常简单的方式附加到它们。这是一个快速的小提琴

$(document).ready(function(){
    var td1 = "<td class='mo'>Cell Mo</td>"
    var td2 = "<td class='eve'>Cell Eve</td>"
    $("#targetRow").append(td1);
    $("#targetRow").append(td2);
});​

如果您无法分配 TRs ID 值但知道它们在表格中的顺序,您始终可以仅在表格的 TRs 上选择并使用 eq() 作为另一个选项来处理它们。

于 2012-09-22T02:58:37.403 回答