33

I have var row=<tr><td>val</td><td>val2</td></tr> and I tried this:

$("#mainTable tbody").append(row);

but it appends to the end of the table.

Also I tried $("#mainTable tr:first").after().append(row);

But have not got a result yet.

Please, help me to understand.

Milad Rashidi
  • 1,084
  • 4
  • 18
  • 35
loviji
  • 11,860
  • 17
  • 61
  • 91

3 Answers3

30

Try this:

$("#mainTable tr:first").after(row);

http://api.jquery.com/after/

Thiago Belem
  • 7,662
  • 5
  • 42
  • 64
6

InsertAfter is what you are looking for:

var row='<tr><td>val</td><td>val2</td></tr>';
$(row).insertAfter("#mainTable tr:first");
Dexter
  • 17,727
  • 4
  • 43
  • 54
6

You can use prepend JQuery method that inserts as the first child:

$("#mainTable tbody").prepend(row);

Prepend documentation

Anik Islam Abhi
  • 24,762
  • 8
  • 55
  • 78
Diego Cotini
  • 1,039
  • 2
  • 17
  • 25