Я создаю динамически сгенерированную форму из базы данных, используя ng-repeat в Node.js и Angular. Все текстовые поля копируют текст, введенный в любом из текстовых полей. Итак, если я набираю «xyz» в одном текстовом поле, все они имеют «xyz». Но, если я отправлю результаты, он обновит только одну ссылку на форму.Сгенерированные текстовые поля Node.js заполняются одновременно
Это HTML:
<div class="container">
<div class="todo-form">
<form class="form-inline" ng-repeat="todo in todoData">
<li>
<h4>Country Code: {{ todo.country_code }} <input id="{{ todo.country_code }}" type="text" class="form-control input-sm" placeholder="{{ todo.country_name }}" ng-model="formData.text">
<button type="submit" class="btn btn-default" ng-click="updateTodo(todo.country_code)">Update</button></h4><br>
</li>
</form>
</div>
Это является JS это относится к:
angular.module('editTodo', [])
.controller('editController', ($scope, $http) => {
$scope.formData = {};
$scope.todoData = {};
// Get Org Details
$http.get('ref_country_code_get')
.success((data) => {
$scope.todoData = data;
console.log(data);
})
.error((error) => {
console.log('Error: ' + error);
});
Очевидно, что мне нужно, чтобы отключить эту функцию. Я попытался добавить в форму имя = или ID = {{todo.country_code}}, чтобы сделать его уникальным, но это не работает. Почему все действуют так, как будто они являются одним и тем же текстовым полем? Я новичок в Node.js и очень ржавый с моим HTML, но я не могу найти никакой ссылки на это явление. Может быть, это слишком основательно, что никто не делает эту ошибку? %)
Модель ng одинакова для всех текстовых полей - попробуйте изменить ее на «todo.text» –
Фантастический! Это сработало! – jurban1997