动态生成的单选按钮的模型更新

时间:2012-11-02 16:17:14

标签: data-binding radio-button angularjs

请有人帮我解决这个小小的约束。我正在尝试生成任务列表

这是我的TaskController中的模型定义:

angular.module('yeomantestApp')
  .controller 'TaskController', ($scope) ->
    $scope.currentTask
    $scope.tasks = [
        {
            id: 1
            name: 'write test'
            elapsedTime: 15
        },
        {
            id: 2
            name: 'run test'
            elapsedTime: 32
        },
        {
            id: 3
            name: 'write code'
            elapsedTime: 22
        }
    ]

所以,现在我想用以下视图渲染模型。视图迭代任务数组并为每个任务构建单选按钮列表。 我的问题是,绑定到currentTask的模型在某种程度上不起作用。当我选择任何任务时,currentTask模型条目不会更新。但根据教程和文档应该。

<div class="hero-unit" ng-controller="TaskController">
    <h1>Tasks</h1>
    <h2>current {{currentTask}}</h2>
    <form name="taskForm">
        <div ng-repeat="task in tasks">
            <input type="radio" name="taskGroup" ng-model="currentTask" value="{{task.id}}">{{task.name}} {{task.elapsedTime}}
        </div>
    </form>
</div>

1 个答案:

答案 0 :(得分:12)

ng-model属性更改为ng-model="$parent.currentTask"可以解决您的问题。

这是jsFiddle:http://jsfiddle.net/dp3xq/8/