Форма отзывов Angular

234
04 декабря 2017, 18:43

Приложение на angular. Не удаётся получить значения из формы отзывов.

В чем может быть проблема?

<div>
     <div ng-controller="MyCtrl">
         <div ng-repeat="review in reviews">
         <blockquote>
              <h3>{{review.name}}</h3>
              <h3>{{review.star}}</h3>
              <h5 ><small><i>{{review.email}}</i></small></h5>
              <p>{{review.message}}</p>
         </blockquote>
         </div>
         <form>            
              <div class="input-group">
              <span >Name</span>
              <input  type="text" ng-model="review.name" />
              <span >E-mail</span>
              <input type="email" ng-model="review.email" />
              <span>Star</span>
              <select ng-model="review.star">
                  <option name="oneStar" value="1 star">1 Star</option>
                  <option name="twoStar" value="2 star">2 Star</option>
                  <option name="threeStar" value="3 star">3 Star</option>
                  <option name="fourStar" value="4 star">4 Star</option>
                  <option name="fiveStar" value="5 star">5 Star</option>
              </select>
              </div>
         </form>
         <textarea class="form-control" rows="5" ng-model="review.message">
         </textarea>
         <input type="submit" class="btn btn-block btn-success" ng-click="addReview()" value="Submit review" />             
    </div>
</div>

Контроллер:

var myApp = angular.module('myApp', []);
    function MyCtrl($scope) {
        $scope.reviews = [];
        $scope.review = {};
        $scope.addReview = function () 
{
           $scope.reviews.push( 
   {
           name: $scope.review.name,
           email: $scope.review.email,
           star: $scope.review.star,
           message: $scope.review.message
           });
       $scope.review = {};    
    };
 }
Answer 1

Думаю, автор вопроса не видит значение в review.email. Это связано с тем, что в качестве поля для ввода используется директива input[email], которая выполняет автоматическую проверку корректности вводимых данных. Если вы вводите в поле не валидный email то в review.email ничего нет.

READ ALSO
Как правильно перевести массив из PHP в JavaScript?

Как правильно перевести массив из PHP в JavaScript?

ЗдравствуйтеПодскажите пожалуйста, как правильно перевести массив из php в js так, что бы внутри массива order создавались новые объекты, но при...

183
Точное сравнение времени в формате H:i

Точное сравнение времени в формате H:i

Доброго времени! Пробую сверить время в формате ЧЧ:ММ есть функция которая через str_replace вырезает из текущего времени формата Y-m-d H:i:s (2017-12-02...

249
Разбить данные на массивы строк

Разбить данные на массивы строк

ЗдравствуйтеКак разбить спарсенные данные в массивы строк?

263
Как создать регистрацию для localhost на mac os

Как создать регистрацию для localhost на mac os

Добрый день, пишу проект (на macbook) с преподавателем, сайт с созданием заметок и, естественно, системой регистрацииВ моем распоряжении есть:

248