項目のリストで項目をクリックすると、 を使用して入力フィールドが開きますng-show="showInput=true"
。
<div ng-app="myApp" ng-controller="Ctrl">
<li ng-click="showInput=true" ng-repeat="label in labels">{{label}} - ---> show input = {{showInput}}
<form ng-show="showInput" >
<input type=text value={{label}}><button ng-click="saveDate()">save</button>
</form>
</li>
</div>
ただし、 をクリックすると、フォームのsave
設定は非表示になりません。showInput=false
angular.module('myApp', [])
.controller('Ctrl', ['$scope', function($scope) {
$scope.labels=["click a", "click b", "click c", "click d", "click e"];
$scope.showInput = false;
$scope.saveData = function(){
$scope.showInput = false;
}
}]);
これは親/子のスコープの問題だと思います。誰でもこれを機能させる方法を指摘できますか?