title: Unselected radio button value in Angularjs
body: <p>I've got an angularjs application that has a form/controller that look essentially like this (boiled down to the pertinent stuff):</p>
  
  <pre><code>angular.module('testApp', [])
      .controller('testCtrl', function ($scope) {
      $scope.envelopes = [{
          id: 1,
          name: 'first',
          default_spend: '1'
      }, {
          id: 2,
          name: 'second',
          default_spend: '0'
      }, {
          id: 3,
          name: 'third',
          default_spend: '0'
      }, ];
  });
  </code></pre>
  
  <p>And a form that looks roughly like this:</p>
  
  <pre><code>&lt;div ng-app="testApp"&gt;
      &lt;div ng-controller="testCtrl"&gt;
          &lt;div ng-repeat="envelope in envelopes"&gt;
              &lt;div&gt;{{envelope.name}}
                  &lt;input type="radio" name="default_spend" ng-model="envelope.default_spend" ng-value="1" /&gt; 
                  Default Spend: {{envelope.default_spend}}
              &lt;/div&gt;
          &lt;/div&gt;
      &lt;/div&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>You can see this in action with <a href="http://jsfiddle.net/x5tamaLf/3/" rel="nofollow">this fiddle</a>. </p>
  
  <p>As you can see, the first envelope is marked as the default_spend envelope and the other two aren't. When I select a different envelope, that envelope also gets marked as the default_spend, but when the radio button is unselected, the model value stays the same ("1"). I understand that I'm dealing with a child scope here due to ng-repeat, but is there a way for me to set an "unselected" value without having to jump through hoops with ngChange?</p>