The \"classic\" approach to web development has been for some time a thin client and a thick server: the server generates HTML and spits it out for the browser to render only. B
ExtJS, YUI, dojo... frameworks that basically offer a hand in implementation apps like the one you're describing
We(at my workplace) used such approach successfully for many many large & small scale apps... In general basing most of our app on ExtJS+jQuery, in some cases on dojo(Zend Framework(if you care about PHP world at all) provide handy integration with dojo elements)
If it is not abused and used just for the sake of using it or bumping the coolness factor - it is an awesome tool.
With proper design it neither heavy nor slow as an approach per se.