views:

37

answers:

1

Everything works fine on the first click of the delete link, but subsequent clicks only delete the record, without refreshing the "quotes" div.

I'm not sure what I'm overlooking here.

My .js file:

$('.deleteRow').live('click', function (e) {
    if (confirm('Delete?')) {
        $.ajax({
            type: 'POST',
            url: this.href,
            cache: false,
            dataType: 'html',
            success: function (response) {
                $('#quotes').replaceWith(response);
                $('#quotesTable').tablesorter().tablesorterPager({ container: $('#pager'), positionFixed: false });
            }
        });
    }
    return false;
});

and the html:

<tr>
    <td>
        Now is the time for all good men to come to the aid of their parties.
    </td>
    <td>

    </td>
    <td>
        7/6/2010 10:13:44 PM
    </td>

    <td> <a class="editRow" href="/Quote/Edit/2">Edit</a></td>
    <td> <a class="deleteRow" href="/Quote/Delete/2">Delete</a></td>
</tr>

<tr>
    <td>
        I&#39;m a loser
    </td>

    <td>
        146
    </td>
    <td>
        7/6/2010 9:11:42 PM
    </td>
    <td> <a class="editRow" href="/Quote/Edit/1">Edit</a></td>
    <td> <a class="deleteRow" href="/Quote/Delete/1">Delete</a></td>
</tr>
+5  A: 

I'm looking at this on an iPhone, so I can't see all of your code but you should probably be using ".html" instead of ".replaceWith". The former replaces the content inside the specifies tag, the latter wipes out the tags, too.

ThatSteveGuy
+1 for this solution
muntu
+1 - Because I think you're right, and because you're posting answers from an iPhone. Now that's dedication! :o)
patrick dw
Gonna give this a go presently...
PolishedTurd
Oh hot dog! Thanks Chief!
PolishedTurd