'td' - 使用循环不附加到'tr'元素的元素

时间:2014-08-26 05:42:39

标签: javascript jquery html

我正在动态创建一个基于3 col的表。我使用的是此代码,但td未附加到tr

这是我的代码:

var l = 10;

for(i=0; i<l; i++){
    if(i%3==0){
       var tr = $('tbody').append('<tr/>')
    }
    $(tr).append('<td>'+i+'</td>'); //not appending to tr element!
}

Live Demo

3 个答案:

答案 0 :(得分:1)

更改为:

   var tr = $('<tr />').appendTo('tbody'); // this returns the tr element.

<强> THE WORKING DEMO.

答案 1 :(得分:1)

$('tbody').append('<tr/>')会返回<tbody>&#39; s jQuery

你应该这样做:

var body = $('tbody'),
    l = 10,
    tr,
    i;

for (i = 0; i < l; i += 1) {
    if (i % 3 === 0) {
       tr = $('<tr />').appendTo(body); 
    }

    tr.append('<td>' + i + '</td>');
}

答案 2 :(得分:1)

尝试:

var i, il, tr, td;
var tbody = $('tbody');

for (i = 0, il = 10; i < il; i++) {
    if (i % 3 === 0) {
       tr = $('<tr />').appendTo(tbody);
    }

    $('<td />').text(i).appendTo(tr);
}