【问题标题】:Get a <tr> ID which is generated dinamically获取一个动态生成的 <tr> ID
【发布时间】:2016-03-30 02:49:45
【问题描述】:

我需要从下面的复选框中获取 id

<% @task.each do |task| %>

        <tr id="tr_<%= task.id%>">
          <td><%= check_box_tag "done[#{task.id}]",task.id, task.done, data:{
              remote: true,
              url: url_for(action: :toggle, id: task.id, checked: task.done),
              method: "POST"
          } %> </td>
          <td><%= task.title %></td>
          <td><%= task.detail %></td>
          <td><%= task.task_date.strftime('%d/%m/%Y') %></td>
          <td><%= button_to('Show', task_path(task) , :class => 'btn btn-default', :method => :get)  %></td>
          <td><%= button_to('Edit', edit_task_path(task), :class => 'btn btn-primary',:method => :get)  %></td>
          <td><%= button_to('Remove', task_path(task), :class => 'btn btn-danger', method: :delete, data:{ confirm: 'Are you sure?' }) %></td>
        </tr>
    <% end %>

我的 JS 按预期运行,但我不知道如何以动态方式运行。

$("#tr_37").change(function(){
         $(this).hide();
     });

【问题讨论】:

  • $("#tr_37").change(function(){ 更改为$(document).on("change","#tr_37",function(){ 参见.on()
  • 没有工作,也没有做它动态=/
  • didn't figure out how to do it dynamically. ? 你能详细说明一下这是什么动态添加的
  • 我正在动态设置 tr id。我怎样才能在 jquery 上得到它来隐藏行?
  • 您想获取选中复选框时动态添加的 tr 的 id?只需 $(this).closest('tr').hide()

标签: javascript jquery ruby-on-rails-4


【解决方案1】:

您想在复选框更改时隐藏tr 吗?

我认为你需要在更改时捕获复选框的事件

$("tr input[type='checkbox']").change(function(){
     $(this).closest("tr").hide();
});

【讨论】:

  • tr_37 是生成 id 的示例。可以是tr_1、tr_2、tr_3
猜你喜欢
相关资源
最近更新 更多
热门标签