2016-06-06 4 views
1

Я новичок в Угловом и я не могу достичь чего-то очень простого, позволяет сказать, что у нас есть несколько входной флажок петли следует текстовому поле input так:

<body ng-app="ngToggle"> 
    <div ng-controller="AppCtrl"> 
     <input type="checkbox" ng-repeat="btn in btns" ng-model="changing" ng-change="change(btn.value, 'other')" class="here" value="{{btn.value}}"> 

     <input type="text" class="uncheck" ng-disabled="other"> 


    <!-- Here comes the other one --> 

     <input type="checkbox" ng-repeat="btn in btns" ng-model="changing" ng-change="change(btn.value, 'other2')" class="here" value="{{btn.value}}"> 

     <input type="text" class="uncheck" ng-disabled="other2"> 
    </div> 
</body> 

а также идея здесь заключается в следующем: когда флажок со значением «другой» проверяется, что позволит соответствующее текстовое поле детерминированное в параметре поля функции change, поэтому я разработать функцию change(value, field) и работает следующим образом:

 $scope.btns = [ 
     {value:'one'}, 
     {value:'two'}, 
     {value:'other'} 
    ]; 

    $scope.other = true; 
    $scope.other2 = true; 

    $scope.change = function(value, field) { 
    if(value == 'other'){ 
     if($scope.field == false){ 
     $scope.field = true; 
     } else { 
     $scope.field = false; 
     } 
    } 
    }; 

Но проблема в том, что это не работает, я не знаю, правильно ли я это делаю, проблема $scope.field, как я могу передать параметр на $scope

Надеюсь, кто-то может мне помочь. Спасибо.

+0

'$ scope.field', кажется, не быть инициализирован в любом месте – Guillaume

+0

Точно, я пытаюсь поставить значение в передаваемого параметра в «$ scope», например, если я поставлю что-то вроде этого: «change (one)», область станет «$ scope.one», потому что это параметр FIELD @Guillaume –

+0

вправо, я не понял – Guillaume

ответ

0

Вы можете использовать ng-model с помощью этой флажки, затем используйте ng-disabled, чтобы прослушать эту модель, принадлежащую этой галочке.

<input type="checkbox" value="Other" ng-model="myCheckboxes['other']" /> 
<input type="text" ng-disabled="myCheckboxes['other']" /> 
Смежные вопросы