Невозможно создать свойство 'subject' для числа '1', используя AngularJs - PullRequest
0 голосов
/ 09 мая 2018

Я хочу выбрать несколько предметов на одном курсе, но не могу этого сделать

У меня есть два раскрывающихся списка: один для выбора курса и один для выбора предметов. Для множественного выбора предметов я использую плагин angular-selected , я могу выбрать несколько предметов только в том случае, если Курс не выбран из выпадающего списка. Но когда я выбираю курс из выпадающего списка, я не могу выбрать даже один предмет из выпадающего списка

Ниже приводится мой AddCourseController.js и связанный с ним HTML

(function() {

  var myApp = angular.module("myApp");

  var AddCourseController = function($scope, CourseService, TeacherService) {

    var onCourses = function(courses) {
      $scope.courses = courses;
    }
    var onError = function(response) {
      $scope.error = true;
      $scope.errors = response.data;
    };
    CourseService.courses().then(onCourses, onError);
    TeacherService.getSubjects().then(function(data) {
      $scope.subjects = data
    });
  };

  myApp.controller("AddCourseController", AddCourseController);
}());
<div class="form-group">
  <label>Select Course</label>
  <select ng-model="course" class="form-control"
          ng-options="course.IdCourse as course.Name for course in courses track by course.IdCourse">
  </select>
</div>
<div class="form-group" ng-class="{ 'has-error' : 
   addCourseForm.subjects.$invalid && !addCourseForm.subjects.$pristine }">
  <label class="pull-left">Select Subjects</label>
  <a class="pull-right btn btn-primary btn-xs" data-toggle="modal" data- target="#add-subject">Add Subject</a>
  <select chosen multiple class="form-control" 
          ng-model="course.subjects"
          ng-options="subject.IdSubject as subject.Name for subject in subjects">
  </select>
  <p ng-show="addCourseForm.subjects.$invalid && 
  !addCourseForm.subjects.$pristine" class="help-block">Subject is required.
  </p>
</div>

1 Ответ

0 голосов
/ 09 мая 2018

Измените селектор курса, чтобы вернуть весь объект course в ng-model:

<div class="form-group">
  <label>Select Course</label>
  <select ng-model="course" class="form-control"
          ng-options="course ̶.̶I̶d̶C̶o̶u̶r̶s̶e̶ as course.Name for course in courses track by course.IdCourse">
  </select>
</div>
...