.appendTo和HTML文字

时间:2012-04-20 16:34:51

标签: jquery appendto

element.appendTo('<td>').appendTo('<tr>').appendTo('#ordersList')

这是否应该将元素放在一个新的td元素中,在#ordersList元素内的一个新的tr元素内(是一个表)?

因为我只是在#ordersList中获取裸元素而没有包装tr / td。

这个我试图排除故障的旧网站似乎正在使用jQuery 1.4.1 - 如果这是一个已知的错误。

2 个答案:

答案 0 :(得分:3)

appendTo()会返回您正在操作的元素,因此you're actually doing是什么;

  1. 将您的元素添加到新创建的td
  2. td中分离元素并将其添加到新创建的tr
  3. 将其与tr分离并将其附加到#ordersList
  4. 什么会起作用呢?

    $('<td></td>').appendTo($('<tr></tr>')​​​​​​​​​.appendTo('#ordersList')).append(element);
    

    ......因为可读性而太糟糕了。

答案 1 :(得分:1)

你总是可以使用本机API来做这样的简单事情,尽管减少代码的帮助很好......

function create(type) { return document.createElement(type); }
function byId(id) { return document.getElementById(id); }

byId('ordersList')
    .appendChild(create('tr'))
    .appendChild(create('td'))
    .appendChild(element);

本机.appendChild()返回附加的元素,因此您可以将调用链接到嵌套元素。