I'm looking for good patterns for implementing a paged table of results in ASP.NET MVC with sorting, filtering, and paging provided via AJAX. It seems to me that I should have my controller actions provide only the data and not mark up to maintain the separation of concerns -- so the Ajax callback would provide new table data and pager settings which the client would use to re-render the table. Alternatively, I could use have the controller return a partial view that I simply replace inside a container on the page.
I'm new to the ASP.NET MVC world, so I'd be interested in hearing opinions and other alternatives as well.
How would you go about doing this?
I'm also interested in hearing about jquery table plugins that work well with Ajax.