1

Внизу ng-show div не работает. Я ссылаюсь на него из другого div, но внутри контроллера. PLS любую помощь.угловая область действия не работает

<div ng-controller="MainCtrl" > 
<div data-ng-repeat="choic in choice" > 
<form > 
<input ng-model="mustShow" class="label_align" type="radio" name="customer" value="no" > 
<div class="mediumSubhead"> Information housed </div> 
<br/>   
<input ng-model="mustShow" class="label_align" type="radio" name="customer" value="yes" > 
<div class="mediumSubhead"> Information housed outside </div> 
      </form> 
</div> 
<div ng-show="mustShow == 'yes'" > ----this part doesnt work 
<input name="first_name" class="text_box_space" type="text" value="" style="color: black;" size="25" width="200px" > 
</div> 
</div> 
Controller.js 

var app = angular.module('EquityCompensation', []); 

    app.controller('MainCtrl', function($scope) { 

    $scope.choice = [{id: 'choic1'}]; 

}); 

ответ

1

Вы объявляете ng-model внутри ng-repeat, который добавляет, что переменная сфера внутри ng-repeat сферы, потому что ng-repeat действительно создает новую область на каждой итерации. Вы можете ссылаться на родительскую область, используя нотацию $parent, чтобы указать переменную родительской области.

ng-model="$parent.mustShow" 

Alternative

Вы можете использовать правило точечного использовать прототипичное наследование как

$scope.option = { 
    'mustShow': false 
} 

Затем используйте как ng-model="option.mustShow"

+0

спасибо много ..Это работало в настоящее время – user3853398

Смежные вопросы