AngularJS - 选择的模型无法正常工作

时间:2017-11-08 08:10:19

标签: javascript jquery angularjs

当我从AngularJS选择的localytics下拉列表中选择一个选项时,我试图获得价值。 这是下拉列表的代码:

<select chosen style="width: 250px"
        ng-model="StudentId"
        ng-options="allStudent.StudentId as allStudent.Name for allStudent in allStudent">
        <option value="">Select</option>
</select>
<h2>Chosen with static options: {{ StudentId }}</h2>
<input type="button" value="Search" ng-click="GetStdCourseList(StudentId)">

在我的控制器中,我有以下功能:

    $scope.GetStdCourseList = function (StudentId) {
        alert(StudentId);
    };

当我使用提醒时,它会显示我未定义的&#39;而不是显示价值 我该如何解决这个问题?

实际上这是可以的,当我没有使用所选择的搜索但是当我使用&#39;选择&#39;然后它没有工作....这是截图:

enter image description here

非常感谢。

2 个答案:

答案 0 :(得分:2)

我认为您在点击按钮之前没有选择任何选项。当我选择选项时,这对我来说很好。

var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
    $scope.allStudent = [{StudentId: 0, Name: 'name1'}, {StudentId: 1, Name: 'name2'}];
     $scope.GetStdCourseList = function (StudentId) {
        alert(StudentId);
    };
});
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
<div ng-app="myApp" ng-controller="myCtrl">
  <select chosen style="width: 250px"
          ng-model="StudentId"
          ng-options="allStudent.StudentId as allStudent.Name for allStudent in allStudent">
          <option value="">Select</option>
  </select>

  <h2>Chosen with static options: {{ StudentId }}</h2>
  <input type="button" value="Search" ng-click="GetStdCourseList(StudentId)">
</div>

答案 1 :(得分:0)

好吧,因为ng-model的对象是$ scope.something本身,试着

替换

alert(StudentId)

成为

alert($scope.StudentId)

我并不认为在这种情况下你需要参数。只是忽略它,因为$ scope覆盖了它

将会做

为了更好的可读性而编辑