在HTML div标记中循环表达式以使用Javascript

在HTML div标记中循环表达式以使用Javascript,javascript,jquery,html,ruby-on-rails,turbolinks,Javascript,Jquery,Html,Ruby On Rails,Turbolinks,我正在做一个RubyonRails项目,尝试在html表单中循环变量,这样就不需要手动编写太多代码。然而,我意识到,如果我将要计算的表达式放在id标记中,JS代码将无法工作。例如 有效,但 我从1到10的位置不工作 我猜在Javascript端不会调用对html中的表达式求值,我还怀疑turbolinks可能不会等待id标记求值。 所以我怀疑我不能在id标签中使用expresion,或者我需要更改TurboLink 在my html.erb中 <% for i in 1..10 %>

我正在做一个RubyonRails项目,尝试在html表单中循环变量,这样就不需要手动编写太多代码。然而,我意识到,如果我将要计算的表达式放在id标记中,JS代码将无法工作。例如
有效,但
我从1到10的位置不工作

我猜在Javascript端不会调用对html中的表达式求值,我还怀疑turbolinks可能不会等待id标记求值。 所以我怀疑我不能在id标签中使用expresion,或者我需要更改TurboLink

在my html.erb中

<% for i in 1..10 %> 
   <div class="field" id="type#{i}">
      <%= f.label "type#{i}" %>
      <%= f.select "type#{i}" ,['text','barcode']%>
    </div> 
    <div class="field" id="barcode_type#{i}">
      <%= f.label "barcode_type#{i}" %>
      <%= f.text_field "barcode_type#{i}" %>
    </div> 
  </div>
..

尝试更改此选项:

<div class="field" id="type#{i}">

为此:

<div class="field" id="type<%= i %>">

因为
是一个普通的HTML代码,所以RoR在这里不会改变任何东西,您的HTML页面看起来与您编写的完全相同

<div class="field" id="type<%= i %>">