Javascript 使用Angular JS获取选定元素

Javascript 使用Angular JS获取选定元素,javascript,jquery,angularjs,angularjs-select2,Javascript,Jquery,Angularjs,Angularjs Select2,我正在使用select2创建一个可选列表,并使用一个按钮打印所选项目,如下所示: <select ng-model = "selectedRatios" ng-options = "ratio.name for ratio in ratios" class="js-example-basic-multiple" multiple = "multiple"> </select> <button ng-click="printSelected();">Prin

我正在使用select2创建一个可选列表,并使用一个按钮打印所选项目,如下所示:

<select ng-model = "selectedRatios" ng-options = "ratio.name for ratio in ratios" class="js-example-basic-multiple" multiple = "multiple">

</select>

<button ng-click="printSelected();">Print ratios</button>
var app = angular.module('IndexApp', []);

app.controller('IndexController',['$http', '$scope', function($http, $scope) {

  $http.get('/ratios').success(function(result) {

    console.log(result);
    $scope.ratios = result;


  });

  $scope.printSelected = function() {
    console.log($scope.selectedRatios);
  }


}]);
问题是
printSelected
函数总是打印出
undefined
,我不知道为什么。假设您将直接从可选列表的
ng model
中获取所选元素,这是错误的吗

编辑:

当我删除用于使用select2的jQuery脚本代码时,printSelected函数按预期工作,但列表显然不再按预期的样子或工作

我删除的内容:

<script type="text/javascript">

  $(".js-example-basic-multiple").select2();



</script>

$(“.js示例基本倍数”).select2();

我认为您的代码似乎是正确的。你能安装JSFIDLE或其他什么吗?似乎工作正常。@yazaki似乎是jQuery脚本导致了问题,当我删除它时,printButton按预期工作。见上文。