Задать вопрос
@mr_drinkens89

Как в angular.js собрать все поля?

Подскажите,кто сталкивался.
Разбираюсь с angular.js,до этого работал лишь с jquery.
Суть такая: есть блок, в котором 2 селекта, и 3 чекбокса. При изменении любого инпута (будь то селект, или чекер), должен уходить аякс запрос с данными параметрами.
Я вывел элементы в таком виде:
<select name="inspection" ng-change="change()" ng-model="formData.inspection">

И чекбоксы
<input type="checkbox" 
			ng-model="formData.power1" 
			ng-change="change()"  
			ng-true-value={{ p.pk }}
			ng-checked="true"

Дак вот, чекеры все отмечены, но они не входят в объект. После изменения чекера или селекта - объект заполняется нужными полями.
В jquery есть метод serialize() который обходит всю форму, ну и формирует выбранные параметры.
Есть ли подобный аналог в angular.js?
Понятно,что можно в контроллере вручную выбрать каждое значение, и присвоить его для объекта запроса. Но это jquery-way, а хочется как-то все оптимизировать.Чтоб нажал на селект, и в объект автоматически присвоились все поля.
спасибо
  • Вопрос задан
  • 2390 просмотров
Подписаться 3 Оценить Комментировать
Пригласить эксперта
Ответы на вопрос 2
@angry_bender
PHP, JS
Попробуйте ng-change="change(formData)" вот так.
Ответ написан
agladkov
@agladkov
Повесьте $watch на formData:
$scope.$watch('formData', function () {
            // submit $scope.formData;
        }, true);
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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