title: How to solve knockout applyBindingsToNode adding multiple elements?
body: <p>I'm trying to use knockout applyBindingsToNode to dynamically add and remove elements. The reason is I need to update my html so the binding will be cut that's why I need to use applyBindingsToNode. </p>
  
  <p>I have an example here if you click on the button Rebind name, it will add four elements but I only expect 2. Anything I miss? </p>
  
  <p>Here's my jsfiddle
  <a href="http://jsfiddle.net/noppanit/dhztqgbz/" rel="nofollow">http://jsfiddle.net/noppanit/dhztqgbz/</a></p>
  
  <pre><code>var Model = function Model() {
      var people = ko.observableArray([{
          name: 'name1'
      }, {
          name: 'name2'
      }]);
  
      var changeElement = function () {
          people.push({
              name: 'name3'
          });
      };
  
      var rebindElement = function () {
          var peopleList = document.getElementById('people_list');
          ko.cleanNode(peopleList);
  
          ko.applyBindingsToNode(peopleList, {
              foreach: [{
                  name: 'name3'
              }, {
                  name: 'name4'
              }]
          });
      };
  
      return {
          people: people,
          changeElement: changeElement,
          rebindElement: rebindElement
      };
  };
  
  ko.applyBindings(new Model(), document.getElementById('wrapper'));
  </code></pre>