Since there are so many jQuery plug-ins out there it can be very difficult to decide which ones to try out and especially which ones can be used in a production environment. So in order to help to this affect I have listed some of the most useful plug-ins we use in high-traffic web-apps and I have found them to be reliable enough for production use.

The product: A web-based CRM system that feels-and-looks like a desktop app, so Ajax is very important.

My skills (or lack thereof): JavaScript has never been my focus and always thought it too "boiler-plate", so no not my strongest technical skill. Asp.Net MVC, C#, NHibernate ORM, etc. The main point being JavaScript is not essential when using jQuery and some rudimentary knowledge will be beneficial, so don’t think you need to know a lot about JavaScript to use jQuery or any of the plug-ins. Though, some very useful concepts may be found in the book “jQuery in Action” by MANNING in the appendix.

Here are the plug-ins I have used and and recommend, but have also included some that we do use but would not recommend..

jQuery UI version 1.7.1. This exists of a custom selection of plug-ins, and you will be able to select your own set from the site. The tabbing plug-in is being used a lot but the performance hit is significant on the client.

Context sensitive menu, version 1.0. Right click on object will replace the browser’s default context sensitive menu with this one, that is fully customizable and what sets it apart from others is that it can be built on the fly after page load has completed.

jQuery plug-in, allows you to drag and drop table rows, version 0.5. Use this to drag and drop rows, however, the issue is that when selecting the row without dragging it, it already initiates the Ajax call which is a problem if you do not want to cause an Ajax call to update a row’s position on the DB server when you have in fact not changed it’s position/order.

Table sorter version 2.0.3. Use this as an alternative to the jqGrid plug-in as a quick-and-dirty way to sort and page through tables, but it is very big and requires all rows listed in the client’s browser.