Я так много борюсь и нахожу столько ссылок и статей, но не могу получить решение. У меня такой массив
$scope.cols=[
{"dpname":"partname","search":'',"qparam":''},
{"dpname":"partid","search":'',"qparam":''},
{"dpname":"partdesc","search":'',"qparam":''}
];
Я показываю массив, используя ng-repeat, а также повторяю флажки. когда я нажимаю парикулярный флажок, нужно открыть одно текстовое поле. Данное значение ng-модели в текстовом поле заменяется на этот конкретный флажок
Здесь я прикрепил ссылку на скрипку, которую я пробовал: http://jsfiddle.net/soumyagangamwar/3dygzn8e/
Пожалуйста, помогите мне решить
Посмотрите на эту скрипку
Хотя вы четко не указали, что хотите в вопросе. Но если вы хотите, чтобы каждый элемент имел свое собственное текстовое поле, то вышеупомянутая скрипка должна ответить на ваш вопрос.
<span ng-if="displayName">
<input type="checkbox" id="searchName{{$index}}" ng-model="searchname[$index]" ng-change="changeColVisibility(col)">
</span>
<div ng-show="col.show">
<input type="text" ng-model="name">
<input type="button" value="submit" ng-click="setName(col)">
</div>
Вы должны стараться не использовать индекс и лучше использовать больше двухстороннего связывания, которое приходит с угловым. Оба показывают и скрывают текстовое поле и сохраняют данные в моделях, а не создают множество функций для этого.
Я изменил ваши файлы в этой ссылке
jsfiddle.net/3dygzn8e/1/
в основном, я сделал следующее:
сообщите мне, помогло ли это решить проблему.
Благодарю!
команда smartdigitizers