Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 07.12.2017, 12:20
Интересующийся
Отправить личное сообщение для One_Two Посмотреть профиль Найти все сообщения от One_Two
 
Регистрация: 20.11.2017
Сообщений: 10

ng-checked срабатывает один раз
Всем привет!

Делаю простой пример с радио-кнопками и отправляю их значение в массив.
Подскажите пожалуйста, почему ng-checked у радио-кнопки срабатывает 1 раз? После того как отправляю значение, ng-ckecked по дефолту не ставится.

<!DOCTYPE html>
<html ng-app="myApp">

  <head>
    <title>Modal</title>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script>
    <script>
      angular.module('myApp', []);
      angular.module('myApp').controller('myCtrl', function($scope) {
        $scope.arrs = [];
        $scope.add = function(){
          $scope.arrs.push({radio:$scope.radioVal});
          $scope.radioVal = '';
        };
        console.log($scope.arrs);
      });
    </script>
  </head>

  <body ng-controller="myCtrl">
    <div>
      <button ng-click="showBlock = ! showBlock">Кнопка</button>
    </div>
    <div ng-show="showBlock">
      <input type="radio" ng-model="radioVal" value="def" ng-checked="true"><span>Дефолт</span><br>
      <input type="radio" ng-model="radioVal" value="1"><span>1</span><br>
      <input type="radio" ng-model="radioVal" value="2"><span>2</span><br>
      <button ng-click="add()">Отправить</button>
    </div>
  </body>

</html>

Последний раз редактировалось One_Two, 07.12.2017 в 12:38.
Ответить с цитированием
  #2 (permalink)  
Старый 07.12.2017, 12:39
Интересующийся
Отправить личное сообщение для One_Two Посмотреть профиль Найти все сообщения от One_Two
 
Регистрация: 20.11.2017
Сообщений: 10

И ещё заметил, что вроде как радио-кнопка выбрана по дефолту, значение передается "undefined", если сразу нажать "отправить"..
Ответить с цитированием
  #3 (permalink)  
Старый 07.12.2017, 13:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,069

Сообщение от One_Two
ng-ckecked по дефолту не ставится.
Сообщение от One_Two
$scope.radioVal = '';
<!DOCTYPE html>
<html ng-app="myApp">

  <head>
    <title>Modal</title>
    <meta charset="utf-8">
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.6/angular.min.js"></script>
    <script>
      angular.module('myApp', []);
      angular.module('myApp').controller('myCtrl', function($scope) {
        $scope.arrs = []; $scope.radioVal = 'def';
        $scope.add = function(){
          $scope.arrs.push({radio:$scope.radioVal});
          $scope.radioVal = 'def';
          console.log($scope.arrs);
        };
        console.log($scope.arrs);
      });
    </script>
  </head>

  <body ng-controller="myCtrl">
    <div>
      <button ng-click="showBlock = ! showBlock">Кнопка</button>
    </div>
    <div ng-show="showBlock">
      <input type="radio" ng-model="radioVal" value="def" ><span>Дефолт</span><br>
      <input type="radio" ng-model="radioVal" value="1"><span>1</span><br>
      <input type="radio" ng-model="radioVal" value="2"><span>2</span><br>
      <button ng-click="add()">Отправить</button>
    </div>
  </body>

</html>
Ответить с цитированием
  #4 (permalink)  
Старый 07.12.2017, 13:26
Интересующийся
Отправить личное сообщение для One_Two Посмотреть профиль Найти все сообщения от One_Two
 
Регистрация: 20.11.2017
Сообщений: 10

Спасибо!!!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Почему функция выполняется один раз? Elect Общие вопросы Javascript 3 15.11.2015 21:19
Засечь событие scroll один раз tarya jQuery 1 29.07.2015 05:32
PopUp как выполнить код один раз для сессии kznsky Events/DOM/Window 5 03.03.2015 13:48
слайдер срабатывает один раз serrrgggeee Javascript под браузер 8 13.10.2014 16:03
один javaскрипт код на странице много раз Animemia Общие вопросы Javascript 23 04.02.2013 21:18