When to use a js framework?
javascript-framework, ruby-on-rails
Solution
Personally, I think that once you have ajax responses that need to potentially update multiple non-adjacent areas of the page, it's definitely time to introduce a JS framework. Server generated javascript (like what the rails helpers give you) is convenient for very simple things, but once things get more complex than that, you'll be better off just returning JSON data from rails and having the front end figure out from that which parts of the page should get updated.
There's no reason you have to be all one or the other, either. You can continue using Rails' JS helpers for the simple things, but on pages where it makes sense, bring in something like KnockoutJS, Backbone or Angular. I introduced KnockoutJS this way to an existing app and it's worked out pretty well. It helped that it didn't depend on a specific version of jQuery and also supports older browsers.
One thing you'll need to decide is whether to add a JS framework via a rubygem, or just download it and add it to your asset pipeline. The first way might be simpler, but it will also tie you to the version included with the gem, which might leave you a couple versions behind at some point. If I were starting a new app, I'd probably not use any of rails' javascript helpers, and maybe not even the asset pipeline, and use other tools like grunt to do that instead. It's almost a 'separation of concerns' with more work up front, versus 'batteries included' tradeoff.
Problem
We have a ruby on rails website which uses a lot of rail's built in remote ajax with js templates. We have new requirements that are taking us in the direction of a single page application where entire blocks and columns of the page will be ajax based. Should we continue to use rails ajax infrastructure or start incorporating a js framework like angularjs? In other words what are the principle evaluation criteria for determining the need for a js framework?