如何使用带有角度的jQuery Select2

我正在尝试使用带有Angularjs(1.5)的jQuery(2.2.1)Select2(3.5.2),但是很难从选择框中获取数据。 我已经尝试了ui-select ,我可以检索数据…但是在搜索时经常会崩溃浏览器,速度非常慢且整体不稳定(5000-10000项)。 即使有大量的条目,jQuery Select2也是快速且响应迅速的,但是当我选择一个选项时,我似乎无法获得该对象。

      $(document).ready(function () { $(".sel").select2(); });      

app.js

 var app = angular.module('app', []); app.controller('MainCtrl', ['$scope', '$http', function ($scope, $http) { $scope.country = {}; $scope.countries = [{ name: 'Australia', }, { name: 'United States' }, { name: 'United Kingdom' }]; }]); 

有没有办法让这两个很好地工作?

可以使用Ang2的Angular版本。 点击此处: https : //www.npmjs.com/package/angular-select2

(守则在这里: https : //github.com/rubenv/angular-select2 )

此Angular库使用Select2作为依赖项,并帮助在表单中集成Select2。

通过凉亭安装“angular-ui-select”:“= 0.12.1”然后在你的html …..

  {{$item.name}}  

永远不要直接初始化jQuery插件。 通过互联网搜索如何将jQuery模块与Angular集成(它可能看起来有点复杂,但它很容易。以你所做的方式调用它将永远无法工作….

  

ui-select的替代方案是:

 angular-chosen ("angular-chosen-localytics": "~1.0.7",) 

🙂

在搜索了如何从jQuery访问$ scope函数之后,我发现使用angular.element.scope()。function(x)将允许我将每个select2元素的键(在“change”事件中)传递给angular,然后可以操纵。