有几个类似于SO的帖子,但我还没有找到一个答案正确的答案。我试图按照GitHub page上的说明在我的Rails 3.2应用程序中实现select2-rails gem。我捆绑了宝石,并包括JavaScript和CSS文件。然后我添加了一个像sample code那样的js函数调用。然而,我的选择栏并没有改变。select2-rails gem:已安装的资产和被调用的函数,但下拉不变(TypeError:undefined不是函数)
的Javascript包括:
# application.js
//= require jquery
//= require jquery_ujs
//= require select2
//= require jquery-1.11.0.min.js
//= require lightbox.min.js
//= require parsley
//= require ./jquery.datetimepicker.js
//= require Stripe/jquery.payment.js
//= require_tree .
CSS包括:
# application.css.less
/*
*= require_tree .
*= require select2
*= require select2-bootstrap
*= stub active_admin
*/
我与表单页面,只是想复制的例子:
# new.html.haml
=content_for :title, 'Post a job'
= javascript_include_tag "https://js.balancedpayments.com/1.1/balanced.js"
:javascript
var _balanced_marketplace = "#{@balanced_marketplace}";
var _categories = #{raw(@categories.to_json)};
$(document).ready(function() { $("#e1").select2(); });
...
...
%select{id: "e1"}
%option{value: "AL"} Alabama
%option{value: "WY"} Wyoming
我的剧本的结束和由HAML生成的HTML:
$(document).ready(function() { $("#e1").select2(); });
</script>
<select id='e1'>
<option value='AL'>Alabama</option>
<option value='WY'>Wyoming</option>
</select>
所有这些只会导致正常的选择下拉菜单,而不会产生select2样式/功能。
在JavaScript控制台中我看到下面的错误我的函数调用:
Uncaught TypeError: undefined is not a function
我不是非常熟悉JavaScript,但我猜这意味着与功能`选择2个问题()”。但是,我不确定如何开始调试,因为我一直遵循gem安装说明。当我查看网页源我看到正在加载的选择2 JS库如下:
<script src="/assets/select2.js?body=1" type="text/javascript"></script>