Javascript TwitterBootstrap以json格式启动并将数据从模型传递到JS

Javascript TwitterBootstrap以json格式启动并将数据从模型传递到JS,javascript,jquery,ruby-on-rails,ruby-on-rails-3,twitter-bootstrap,Javascript,Jquery,Ruby On Rails,Ruby On Rails 3,Twitter Bootstrap,我想把我的“公司”的名字输入自动填写的表格中 我正在使用twitter引导和gon gem将数据传递到Json中,并使其可供js使用 但是,我无法让字段做出响应,我认为表格中没有数据,也不理解原因 我的公司控制器执行以下操作,将公司名称分配给gon变量 gon.firms = Firm.all.map &:name My Application.html.erb的标题中包含以下内容,以使gon变量可供js使用 <%= include_gon %> <script ty

我想把我的“公司”的名字输入自动填写的表格中

我正在使用twitter引导和gon gem将数据传递到Json中,并使其可供js使用

但是,我无法让字段做出响应,我认为表格中没有数据,也不理解原因

我的公司控制器执行以下操作,将公司名称分配给gon变量

gon.firms = Firm.all.map &:name
My Application.html.erb的标题中包含以下内容,以使gon变量可供js使用

<%= include_gon %>
<script type="text/javascript">
    jQuery(document).ready(function() {
        $(.typeahead).typeahead({source:gon.firms});
    });
    </script>
js还有以下库

//= require jquery
//= require jquery_ujs
//= require jquery-ui
//= require twitter/bootstrap
//= require_tree .
我已经检查了gon.firms是否可以作为变量使用,但是dev控制台有以下错误

uncaught syntax error: Unexpected token
你知道这是什么原因吗


有什么明显的错误吗?

首先确保按预期填充了
gon.firms
(检查您的web开发工具控制台)。然后,当您在那里时,确保在框中键入时没有js错误。最后,根据,您似乎希望将插件附加到文本字段,而不是表单:

$('.typeahead .search-query').typeahead( { source: gon.firms } );

这是因为gon.firms是一个ruby数组而不是js数组。 您可以将字符串传输到js,然后将其拆分为如下数组:

$(function() {
    var col = "<%= @pon.firms.join(",") %>".split(",");
    $(".search-query").typeahead({ source: col });
});
$(函数(){
var col=”“.拆分(“,”);
$(“.search query”).typeahead({source:col});
});

感谢您花时间尝试并帮助我整理这些内容,我将举行一次狂欢会,并让您知道进展如何!
$('.typeahead .search-query').typeahead( { source: gon.firms } );
$(function() {
    var col = "<%= @pon.firms.join(",") %>".split(",");
    $(".search-query").typeahead({ source: col });
});