【发布时间】:2016-07-08 03:32:42
【问题描述】:
我正在尝试将 jQuery (2.2.1) Select2 (3.5.2) 与 Angularjs (1.5) 一起使用,但很难从选择框中获取数据。我试过ui-select,我可以检索数据......但搜索时经常会导致浏览器崩溃,速度非常慢且整体不稳定(5000-10000 项)。 jQuery Select2 快速且响应迅速,即使有大量条目,但当我选择一个选项时,我似乎无法获取对象。
<head>
<script src="~/Scripts/angular.min.js"></script>
<script src="~/Scripts/CustomScripts/app.js"></script>
<script src="~/Scripts/jquery-2.2.1.js"></script>
<script src="~/Scripts/select2.js"></script>
<script type="text/javascript">
$(document).ready(function () {
$(".sel").select2();
});
</script>
<head>
<body ng-app="app" ng-controller="MainCtrl">
<select class="sel" data-ng-model="country.selected" ng-options="country.Name for country in countries | orderBy: 'Name'">
<body>
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'
}];
}]);
有没有办法让这两者正常工作?
【问题讨论】:
-
我已经实现了这个,但是在大型列表中,它变得很慢,并且经常会导致浏览器崩溃。
-
多大?我认为长列表和角度组合不是最佳的。这意味着任何类似这样的角度插件都会被粉碎。尝试将搜索移至服务器。
-
对于大型列表,您可以从服务器 async 获取结果 - 我一直在使用此模式,它运行平稳,从未烧焦或类似的东西
-
有 3 个选择框,每个框的大小在 5-10k 之间
标签: jquery angularjs jquery-select2 angularjs-select2