Select2不工作

时间:2016-05-28 00:36:43

标签: jquery jquery-select2

我刚刚下载了Select2 4.0.2。但是,我遇到了示例页面中所述的问题,我尝试添加

<select class="js-example-basic-single form-control" id="js-example-basic-single">
    <option value="AL">Alabama</option>
    <option value="WY">Wyoming</option>
</select>

这就是页面中包含的内容。我把它放在页脚部分。

<script src="http://localhost/hospital_ci/assets/bower_components/jquery/dist/jquery.min.js"></script>

<!-- Bootstrap Core JavaScript -->
<script src="http://localhost/hospital_ci/assets/bower_components/bootstrap/dist/js/bootstrap.min.js"></script>

<!-- Metis Menu Plugin JavaScript -->
<script src="http://localhost/hospital_ci/assets/bower_components/metisMenu/dist/metisMenu.min.js"></script>

<!-- Custom Theme JavaScript -->
<script src="http://localhost/hospital_ci/assets/dist/js/sb-admin-2.js"></script>    <script src="http://localhost/hospital_ci/assets/ckeditor/ckeditor.js"></script>   
<script src="http://localhost/hospital_ci/assets/select2/js/select2.full.js"></script>   

<script type="text/javascript">
$(document).ready(function() {
  $(".js-example-basic-single").select2();
});
</script>

当然,添加了css unde <head>

<link rel="stylesheet" type="text/css" href="http://localhost/hospital_ci/assets/select2/css/select2.css">

但是,我无法显示结果。我有以下错误 select2.full.js:14 Uncaught ReferenceError: require is not defined以及Uncaught TypeError: $(...).select2 is not a function

哦顺便说一下,我正在使用jQuery v2.1.4

1 个答案:

答案 0 :(得分:1)

以下是select2中的代码块,它给出了错误:

if (typeof define === 'function' && define.amd) {
    // AMD. Register as an anonymous module.
    define(['jquery'], factory);
} else if (typeof exports === 'object') {
    // Node/CommonJS
    factory(require('jquery')); // <-- Line 14
} else {
    // Browser globals
    factory(jQuery);
}

所以看起来它认为你正在使用Node或CommonJS,并通过检查exports变量的类型来测试它。

您是否在全局范围内的某处定义了exports变量?也许其他一个库正在定义变量?

在调试控制台中,您可以检查exports的值,以获得有关其定义位置的提示。 (只需输入exports并在控制台中按Enter键,如果它不是undefined那么那就是你的问题。