Reputation: 568
I am using ng-repeat to printing data.here i added one replay button.based on reply button enable text box under replay button.
but when i click replay button text boxes are enable all the replay buttons.
Thank you...!
Controller Code
getForumOnIdAnswer(fAnsId);
function getForumOnIdAnswer (fAnsId){
ForumRepository.getForumOnIdAnswer(fAnsId)
.then(function (response){
scope.forumAnswer=response;
},
function(errResponse){
console.error('Error while fetching forumAnser');
}
);
};
html code
<div ng-repeat="forumAnswerData in forumAnswer">
<div class="panel-group">
<div class="panel panel-success">
<div class="panel-heading">
<a href="">{{forumAnswerData.farmer.firstName}}</a>
<div class="pull-right">{{ forumAnswerData.answerDate |
date:"MM/dd/yyyy 'at' h:mma" }}</div>
</div>
<div class="panel-body">{{forumAnswerData.answer}}</div>
<div class="panel-footer">
<button type="button" class="btn btn-danger" ng-click="">Reply</button>
</div>
</div>
</div>
</div>
Upvotes: 0
Views: 84
Reputation: 1230
the code i think will work, using your own repeater in view is:
<div ng-repeat="forumAnswerData in forumAnswer" ng-init="forumAnswerData.buttonEnabled=false;">
<div class="panel-group" ng-click="forumAnswerData.buttonEnabled=true">
<div class="panel panel-success">
<div class="panel-heading">
<a href="">{{forumAnswerData.farmer.firstName}}</a>
<div class="pull-right">{{ forumAnswerData.answerDate |
date:"MM/dd/yyyy 'at' h:mma" }}</div>
</div>
<div class="panel-body">{{forumAnswerData.answer}}</div>
<div class="panel-footer">
<button type="button" class="btn btn-danger" ng-click="" ng-disabled="forumAnswerData.buttonEnabled">Reply</button>
</div>
</div>
</div>
</div>
Expect it helps you
Upvotes: 0
Reputation: 17289
It should be like this. just for enabling textbox.
<div ng-repeat="forumAnswerData in forumAnswer">
<div class="panel-group">
<div class="panel panel-success">
<div class="panel-heading">
<a href="">{{forumAnswerData.farmer.firstName}}</a>
<div class="pull-right">{{ forumAnswerData.answerDate | date:"MM/dd/yyyy 'at' h:mma" }}</div>
</div>
<div class="panel-body">{{forumAnswerData.answer}}</div>
<div class="panel-footer">
<textarea ng-model="yourModel" ng-show="$index ==currentTextBox"></textarea>
<button type="button" class="btn btn-danger" ng-click="currentTextBox = $index">Reply</button>
</div>
</div>
</div>
</div>
Upvotes: 2