【问题标题】:How to make tr clickable over link_to [duplicate]如何通过link_to使tr可点击[重复]
【发布时间】:2014-09-27 07:18:15
【问题描述】:

我想用这样的代码使<tr> 可点击:

<tr <%= link_to 'Show', show_account_employees_path(account), :remote => true %>>

我发现解决方案仅适用于没有远程的直接链接。

感谢您的帮助!

【问题讨论】:

  • 你的问题太模糊了。请详细描述一下。
  • 我需要这样的东西: true %>>
  • @АртемЯрмилко 你想要 tr 里面的链接吗?
  • 我需要所有行都可以点击

标签: ruby-on-rails ruby


【解决方案1】:

参考您的评论I need all row be clickable

锚标签内不能有 tr。将除 thead,tbody 之外的任何元素作为表的直接子元素是无效的 HTML。 您必须将锚标记放在 td 或 th 中才能有效。

修复

如果您希望整行都可以点击,那么您将不得不使用 js 魔法,您可以执行以下操作:

使用 HTML5 数据属性获取链接值

<tr data-href= "<%= show_account_employees_path(account) %>">
  <td></td>
</tr>

不知道您通过发出 ajax 请求来显示员工究竟想要完成什么,但既然您想要它,因此您可以使用 jquery's ajax 方法将其设为 ajax 请求

$(document).on("click", "#table-id tr", function() {
  var link  = $(this).data("href")
  $.ajax({
    url: link,
    type: "GET"
  });
});

【讨论】:

  • &lt;table&gt; content model&lt;thead&gt;&lt;tbody&gt; 稍微复杂一些,但是是的,您不能将 &lt;a&gt; 作为 &lt;table&gt; 的直接子代,因此您必须通过 JavaScript 完成。
  • @Mandeep - 谢谢!!!作品)我只将var link = this.data("href")更改为var link = $(this).data("href")
  • @yaartem 是的,我的错我忘了
猜你喜欢
相关资源
最近更新 更多
热门标签