Hi,

I notice when I load a page and perform the following call

<code>
        var str = "";
    $.ajax( {
            url: 'core/getIngredients.php',
            type: 'POST',
            data: str,
            success: function(xml) {
                $(xml).find("table").each(function() {
                    var t = $(this).text();

                    var table = $("#list_ingredients");
                    $("#list_ingredients tr").each(function() {
                        if($(this).attr("id").indexOf("tr") >= 0) {
                            $("#" + $(this).attr("id")).remove();
                        }
                    });
                    table.append(t);
                    });

            }
    } );
</code>
it works just fine and populates this table
<code>
<table id="list_ingredients" cellspacing="2" cellpadding="0"
class="list_ingredients2">
<thead>
<tr>
<th>Ingredient</th>
<th>Action</th>
</tr>
</thead>
<tbody>
</tbody>
</table>


If i try to get the jquery sort to work on top of this call, it won't
notice the table
has values and gives a parser error.  I can code around the parser
error with

<code>
        $('#list_ingredients:has(tbody tr)').tablesorter({
                sortList:[[0,0]], widgets: ['zebra']});
</code>

My question is if you run a jquery call to load a table when the page
loads, how do you
get the jquery.tablesorter to understand the table is populated.

If I do inline population of the table via php mysql_query and loop
structures, it works fine.
I'd rather have jquery do the call at the time of loading so I can
separate out my presentation and logic.  Any thoughts would be grately
appreciated.

J

Reply via email to