Добавление динамического текста в onclick в Angularjs [duplicate]

В принятом ответе отсутствует точка:

{
  let a = 123;
};

console.log(a); // ReferenceError: a is not defined
2
задан Pankaj Parkar 14 June 2015 в 15:16
поделиться

2 ответа

В коде вы делаете: -

        $scope.addContact = function()
        {
          $scope.contact.push({$scope.contact})
        }

Здесь проблема. Если вам просто нужно добавить пустое текстовое поле, вам просто нужно добавить пустой контакт в контакты, а ng-repeat позаботится о добавлении нового текстового поля в список. Другое дело, что вы вступаете в контакт, а не с контактами.

Кроме того, ngSubmit используется внутри формы, которой у вас нет. Итак, используйте ng-click. Здесь plunker показывает, что код работает.

            $scope.addContact = function()
            {
              $scope.contacts.push({ name: '' });
            }
1
ответ дан Abhishek Jain 27 August 2018 в 03:55
поделиться

Вы должны заменить ваш ng-submit на ng-click, который решит вашу проблему. И с этим вам нужно изменить структуру объекта, чтобы сохранить значение, например, вам нужно добавить номер контакта в контактном объекте, например contact.number

Пометка

<ul>
    <li ng-repeat="contact in contacts">
      <input type="text" ng-model="contact.number" />
    </li>
    <li>
      <button type="button" ng-click="addContact()">add</button>
    </li>
</ul>

Код

angular.module('controllerAsExample', [])
.controller('SettingsController1', function($scope) {
  $scope.contacts = []
  $scope.addContact = function() {
    $scope.contacts.push({
    })
  }
});

Demo Plunkr

2
ответ дан Pankaj Parkar 27 August 2018 в 03:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: