Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jquery Insert element before <tr>

I am trying to insert a block element Insert something before another . I am not sure if I am using the right method but here is my code. Hope you guys can help. Thanks!

Jquery

$("#addMatch").click(function(){

    $("<td>New insert</td>").insertBefore("#addMatch").closest('tr');

    return false;   //this would insert the <td>New insert</td> before the               
                    //<td><input type="button" id="addMatch" name="addMatch" value="Add 
                    //Match" </td> but not <tr>
});

Html

<tr>
<td>some data</td>
</tr>

//can't tell how many tr would show before the last "addMatch" button. It's dynamic. 
// I want the <td>New insert</td> show up here.
    <tr> 
    <td><input type="button" id="addMatch" name="addMatch" value="Add Match" </td>
    </tr>
like image 315
FlyingCat Avatar asked May 24 '10 23:05

FlyingCat


1 Answers

<td> should always be in a <tr>.

I would probably make your function like this:

$("#addMatch").click(function(){
    $(this).parents('tr:first').before('<tr><td>New Insert</td></tr>');
    return false;
});
like image 90
Kerry Jones Avatar answered Oct 14 '22 06:10

Kerry Jones