Rails如何获取表中每个对象的Javascript值?

问题描述 投票:1回答:2

这是我的表:

<tbody>

<% @productos.each do |producto| %>
  <tr>
    <td><%= producto.codigo %></td>
    <td><%= producto.descripcion %></td>
    <td><%= producto.stock %></td>
   <td><%=  button_to '+', "#", method: :get,class: 'btn btn-info btn-sm btn_add' %></td>

  </tr>
<% end %>

</tbody>

点击按钮我想得到| producto |的值(每一行)在JAvascript中并在同一视图中发送到其他表或正确的方法是从td获取值?例:

<td><%= producto.codigo %></td> //in this case how i get the value of this td?

使用Javascript或Jquery。谢谢

javascript jquery ruby-on-rails ruby-on-rails-5
2个回答
0
投票

首先在每个td al中添加id

<tbody>

<% @productos.each do |producto| %>
  <tr>
    <td id="code-<%= producto.codigo %>"><%= producto.codigo %></td>
    <td id="des-<%= producto.codigo %>"><%= producto.descripcion %></td>
    <td id="stock-<%= producto.codigo %>"><%= producto.stock %></td>
   <td><%=  button_to '+', "#", method: :get,class: 'btn btn-info btn-sm btn_add' %></td>
  </tr>
<% end %>

</tbody>

现在在你的按钮中添加一个像这样的属性data-id

<button class="btn btn-info btn-sm btn_add" data-id="<%= producto.codigo %>" type="button">Click</button>//I don't know about Rails so do this code in your language.

现在jQuery在下面给出...

<script>
    $(document).on('click','btn_add',function(){
        id = $(this).data('id'); //get the clicked button's id
        var code = $('#code-'+id).html(); //get the code of that row
        var des = $('#des-'+id).html();  //get the description of that row
        var stock = $('#stock-'+id).html();  //get the stock of that row
        alert('Code - '+code+'<br> Description - '+des+'<br>Stock - '+stock);
    });
</script>

0
投票

1-在click事件中传递js代码块中所需的所有变量

<td><%=  button_to '+', "#", method: :get,class: 'btn btn-info btn-sm btn_add', :onclick => "get_current_producto(this, '<%=producto.codigo%>', '<%=producto.descripcion%>', '<%=producto.stock%>');"  %></td>

2-在这里获取所有变量

<script type="text/javascript>
        function get_current_producto(elm, codigo,descripcion, stock ){
         //code goes here
         //console.log(codigo);
         alert(descripcion);
       };
</script>

这里elmbutton元素,在其上调用click事件,你可以使用elm获取该按钮元素的id或类

© www.soinside.com 2019 - 2024. All rights reserved.