title: Re-rendering view causes input to lose focus
body: <p>I keep running into this problem over and over.  I have a view with an input and I want to set and update things on every keyUp event.  The problem is when set is called it triggers a change event which re-renders the view which causes the input to lose focus.  So after the user types one character the input loses focus and they can't type anymore.</p>
  
  <p>Another case where this happens is when the user clicks on an input I want to add a class to the div around the input so that it changes color.  This of course causes the view to re-render and the input loses focus.  I can't simply make a separate view for the input because the input is inside the div I want to re-render.</p>
  
  <p>Here's a simple example.</p>
  
  <pre><code>itemView = Backbone.View.extend({
  events: {
      "keyup .itemInput": "inputKeyUp"
  }
  initialize: function(){
      this.model.view = this;
      this.bind('change', this.render());
      this.render();
  },
  render: function(){
      $(this.el).html( $(ich.itemView( this.model.toJSON() )) );
      return this;
  },
  inputKeyUp: function(e) {
      this.model.set({name: $(this.view.el).find('input[type=text]').first().val()});
  },
  });
  </code></pre>
  
  <p>So far I've gotten around it by using {silent:true} and updating things manually but this creates a mess.</p>