将Ruby变量分配给Javascript

时间:2019-06-20 15:06:11

标签: javascript jquery ruby-on-rails ruby

我花了最后几个小时研究这个小谜。

我正在向我的(Rails)视图传递一个名为type的变量,该变量具有以下值之一:

- us
- uk
- fr
- es
- it
- ...

在ruby中,我正在从中创建一个标识符,该标识符将在JS中进一步使用,所以:

<% country_company_name = "#{type}_company_name" %>

然后将其传递给JS,因此代码如下:

<% country_company_name = "#{type}_company_name" %>
<script>
    $("#<%= country_company_name %>").autocomplete({
        source: function(request, response) {

上面的代码生成此代码:

$("#uk_company_name")...

看起来不错-正是我所需要的;但是,JS不“接受”此代码,并且自动完成功能不起作用。

但是,如果我跳过红宝石中的价值构成,只是这样写:

<% country_company_name = "uk_company_name" %>
    <script>
        $("#<%= country_company_name %>").autocomplete({
            source: function(request, response) {

然后JS接受代码,一切运行顺利。

我正在拔头发,无法找出为什么在JS中不接受ruby变量的值作为标识。

编辑:添加有关标识符如何在DOM中呈现的图像(看起来都不错): enter image description here

0 个答案:

没有答案