javascript - ng-change 不会在 ng-selected 上动态调用

标签 javascript angularjs angularjs-ng-repeat

我正在从 select 中动态选择一个项目。项目已正确选择,但模型未更新。此外,在这种情况下,ng-change 不会被调用。

代码:

<select id="course" name="course"
        ng-model="courseId"
        ng-change="getBatch(courseId)">
    <option
        ng-repeat="course in courses"
        value="{{course.course_id}}"
        ng-selected="course.course_name == 
                         '<?php echo ($editMode)? $student_data->course_name : ""?>'">
            {{course.course_name}}
    </option>
</select>

我尝试过:

setInterval(function(){
        $scope.$apply();
    }, 2000);

我检查了很多链接,但没有得到答案。

最佳答案

这是我尝试过的。 我已经删除了 PHP 部分,因为它没有在我的机器上配置。

工作正常

HTML。

<select id="course" name="course"
        ng-model="courseId"
        ng-change="getBatch(courseId)">
    <option
        ng-repeat="course in courses"
        value="{{course.course_id}}">
            {{course.course_name}}
    </option>
</select>

JS

根据您的 html 创建了示例类(class)数组。

$scope.courses = [{course_id :112,course_name:'course1'},
      {course_id :15,course_name:'course2' },
      {course_id :11,course_name:'course3' },
      {course_id :14,course_name:'course4' }
      ];

      $scope.getBatch = function(courseId){

        console.log(courseId);

      }

关于javascript - ng-change 不会在 ng-selected 上动态调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31102465/

相关文章:

javascript - Angular 在运行时选择下拉菜单时动态填充下拉菜单选项

javascript - Mustache ,遍历 JSON 对象

javascript - 没有内容的异步等待获取API不会继续执行代码。

javascript - 我如何知道我的项目的最低 node.js 版本?

javascript - typescript 导出默认功能

angularjs - Karma + Jasmine 下 angular.mock.inject 的 TypeScript AngularJS Controller 测试问题

javascript - Angularjs Protractor 设置窗口大小大于屏幕?

javascript - AngularJS – 如何对 unix 纪元时间数组进行排序

html - AngularJS 将 ng-repeat 嵌套在带有排序过滤器的 HTML 表元素中的 ng-repeat (key, value) 对数据结构中

javascript - AngularJS ng-repeat over multiple tr