Q:

How can I update my radiolist options on the fly in angular?

I'm using a radiolist in a form and need to update the number of option. I load the radiolist in my controller in this way:
//Initialize radiolist for answers
$scope.answersList = [];
$scope.answerSelected = $scope.selectAnsweredSurvey();

for (var i=0; i<$scope.answersCount; i++) {
    $scope.answersList.push({value: $scope.answers[i].id, text:   $scope.answers[i].text});
}

radiolist in my html form:
<div class="form-group" style="margin-top: 10px;">
  <span style="100%"
    data-editable-radiolist="answerSelected"
    e-ng-options="s.value as s.text for s in ::answersList track by s.value"
    e-title="answer.text"
    e-ng-disabled="answeredSurvey(survey.id) || !survey.activa">
    >
  </span>
</div>

In addition I have a 'watch' to detect when the value of $scope.answers changes and return to make the next inside the watch:
for (var i=0; i<$scope.answersCount; i++) {
    $scope.answersList.push({value: $scope.answers[i].id, text:   $scope.answers[i].text});
}

But the radiolist options do not update.
Thanks

A:

The next solve my problem.
First, I adapt my xeditable form like suggested @Sam Bartlett but

I need to add a name attribute, If not, It can select all the options in radiolist.
I need to use a watch wait for change in 'answers'
And very important, in the html, the ng-model need '$parent.' before the answerSelected, If not, I can not access to this variable.

My controller:
//Initialize radiolist for answers
$scope.answerSelected = null;
$scope.answersList = [];

for (var i=0; i<$scope.respuestasCount; i++) {
  $scope.answersList.push({value: $scope.answers[i].id, text: $scope.answers[i].text});
}

//watch for answers
$scope.$watch('answers', function watcher(valueNew, valueOld) {
  if (valueNew !== valueOld) {
    var answersCount = $scope.answers.lenght;
    $scope.anwersList = [];
    for (var i=0; i<answersCount; i++) {
      $scope.answersList.push({value: $scope.answers[i].id, text: $scope.answers[i].text});
    }
  }
});

My html for radiolist:
<div class="form-group" style="margin-top: 10px;">
  <div class="input" ng-repeat="answer in answersList">
    <input type="radio"
      name="answersSurvey"
      ng-model="$parent.answerSelected"
      ng-value="answer.value"
      ng-disabled="answeredSurvey(survey.id) || !survey.active"
      >
    <label>{{answer.text}}</label>
  </div>
</div>

