无法访问ng-model

时间:2015-01-05 04:32:19

标签: javascript angularjs pug

问题:
无法访问我的ng模型。

查看(玉):

div(ng-repeat="(key, value) in questions track by $index")
    .question(ng-repeat="(keyTwo, valueTwo) in value")
        {{keyTwo}}
    .answer(ng-repeat="(keyThree, valueThree) in valueTwo")
        <input type="radio" ng-model="data" name="{{key}}" ng-value={{keyThree}}>{{valueThree}}
    <br>
    center
        input(type='submit' value='Submit' ng-click="check()" class='buttonLook') 

控制器:

app.controller('individualClassCtrl', function ($scope, $http, $routeParams, $window) {
    $scope.check = function () {

            var foo = $scope.data; //undefined every time.
        };
...}

我尝试了什么:
我已经阅读了关于ng-repeat的范围问题...所以我明确设置ng-model="$parent.data"并试图以这种方式访问​​它...没有成功,我收到$ parent是未定义的。

此外,我尝试通过ng-click="check(data)"传递模型,并在检查功能中进行必要的更改,但仍然没有运气。有什么想法吗?

我试过在我的终端中挖掘各种范围,但我没有看到任何东西。

1 个答案:

答案 0 :(得分:1)

这是因为javascript继承。因为ng-repeat(类似于ng-switch)创建了自己的范围,所以一旦存在重复,就会丢失原始范围。

使用

初始化
$scope.my = {data: null}

现在使用$ scope.my.data(添加我应该解决你的问题)。