0

我无法让 Angular UI Select2 模块工作。我能想到的最简单的例子如下,源自 AngularJS 教程。

Github 项目 ( https://github.com/angular-ui/ui-select2 ) 上的说明,我只需要包含 jQuery、Angular 和 Angular UI 的 select2.js。但后来我只得到错误: TypeError: Object [object Object] has no method 'select2'

包括 Select2 没有错误,但我将选择标记的占位符文本作为链接,然后是两个空文本输入字段,一个常规选择下拉列表。当我在选择下拉列表中选择某些内容时,它的值会替换占位符文本。单击链接会清空页面,尝试在文本框中输入内容也是如此。

我已经使用 Yeoman 的 generator-angular 作为基础,在多个浏览器和平台上进行了测试。我尝试了旧版本的 Angular UI 的 select2.js,但行为没有改变。搜索没有找到任何相关的东西,我发现的工作示例是在 Angular UI 分解为模块之前。

我做错了什么还是这是一个错误?

html:

<!doctype html>
<html ng-app="anguish">
<head>
<script type="text/javascript" src="components/jquery/jquery.js"></script>
<script src="components/angular/angular.js"></script>
<script type="text/javascript" src="components/select2/select2.js"></script>
<script type="text/javascript" src="components/angular-ui-select2/src/select2.js"></script>
<script type="text/javascript" src="foo.js"></script>
</head>
<body>
<div>
<select ui-select2 ng-model="select2" data-placeholder="Pick a number">
    <option value=""></option>
    <option value="one">First</option>
    <option value="two">Second</option>
    <option value="three">Third</option>
</select>
</div>
</body>
</html>

foo.js:

'use strict';

angular.module('anguish', ['ui.select2'])
.controller('MainCtrl', function ($scope) {
    $scope.select2 = null;
    $scope.select2Options = {
        allowClear:true
    };
});
4

1 回答 1

4

如果您得到“没有方法选择2”,请尝试包括select2.js之前。angular.js

此外,您将需要该select2.css文件。它不会神奇地为自己设计风格:)

于 2013-06-11T19:09:31.020 回答