As I posted a few weeks ago, we have added jQuery support to DotNetNuke 5.0. This support makes it easy for developers to add jQuery to their modules and know that it will already be available on the server. We have not yet decided on whether to also include jQuery UI support, but I suspect that it will also be made available once we figure out which specific UI features to support (the whole UI library is over 200K and definitely too much for most sites).
With jQuery we have tried to provide a mechanism that only loads the jQuery library when absolutely necessary. If none of the modules or skin-objects on a page require jQuery, then it won’t be included in the page. If your module wants to use jQuery then you must include a long, complicated block of code that looks like this:
DotNetNuke.Framework.jQuery.RequestRegistration()
Ok, maybe it wasn’t so complicated. For those C# developers who may not be able to read this VB code, just add a semi-colon 
During the rendering phase of the page lifecycle, the framework will determine if anyone has requested jQuery and will add the appropriate jQuery reference to the page header section. This ensures that jQuery is loaded on the page before any other scripts which might use it.
NOTE: The framework will not remember who requested the jQuery service after a postback, so make sure to call RequestRegistration for each page request.
Because DotNetNuke 5.0 will include both Asp.Net AJAX support and jQuery support, you should read up on potential problems and conflicts that can occur if you are not careful. A great place to start is Dave Ward’s blog. He has a number of posts, which discuss some of the difficulties you may encounter. I expect that with the pending jQuery inclusion in VS 2010, Microsoft will spend some effort to minimize any potential conflicts.
When you are first developing your module, you may want to step through your own JavaScript and into the jQuery script. If that is the case, then go to the Host Settings page and turn on the jQuery Debug feature which will use the full jQuery library rather than the minified version of the file (trust me - you don’t want to try stepping through the minified version).