1
<table id="myTable0" name="myTable0">
<tbody>
<tr>
</tr>
</tbody>
</table>

<table id="myTable1" name="myTable1">
<tbody>
<tr>
</tr>
</tbody>
</table>

テーブルの最後に新しいhtmlを追加し、Enterキーでそれを実行しようとする、いくつかのJQueryが必要です。また、テーブルが多数あるため、追加する正しいテーブルを選択します。

これは機能しないがこれを行おうとする私のコードです:

for (i=0; i<2; i++)
  {
$("#newComment" + i).keyup(function(event){
    if(event.keyCode == 13){
        var $test= $('<tr><td>content here</td></tr>');
        $('#myTable '+ i + ' > tbody:last').append($test);
    }
}

私に問題を投げかけている行は、次のJqueryselectです。

$('#myTable '+ i + ' > tbody:last').append($newdiv1);
4

3 に答える 3

6

これを試して:

$('#myTable' + i + ' > tbody:last').append($newdiv1);

スペース$('#myTable 'が問題です。

#myTableと0の間にスペースがあります。

#myTable0あなたが持っていた間にあなたは必要です#myTable 0

于 2012-09-09T12:53:47.920 に答える
2

うん、これはとても簡単です。

$('#myTable'+ i).find('tr:last').append($test);

そして、それは完了です。

于 2012-09-09T12:54:55.343 に答える
1

タイプミスはありますか?問題のある行に$newdiv1がある場合は、代わりに$testを意味すると思います。

<tbody>タグが1つしかないので、「:last」セレクターは必要ありません。私はそれを思います

$('#myTable' + i + ' tbody').append($test);

良くなるよ。

編集:うん、Rajat Singhalが言ったように、#myTableの後にセレクターのsapceを削除します。

于 2012-09-09T12:57:50.780 に答える