ruby-on-rails 有没有一种方法可以点击一个button_to bubble up到一个父元素?

sgtfey8w  于 2023-11-20  发布在  Ruby
关注(0)|答案(1)|浏览(116)

下面是我的代码:

<div data-controller="eta">
...
  <div data-action="click->eta#advance" data-value="2hr">
    <%= button_to '2 Hours', set_eta_order_path(@order), method: :post, params: { ... } %>
  </div>
...
(repeated several times as a list)
</div>

字符串
单击该按钮时可以工作,但事件不会冒泡到div,因此不会调用div上的事件处理程序。
有一个列表,上面列出了这些div作为投票的选项,每个div在点击后都应该前进到下一个页面并保存你点击的结果。问题是投票的页面几乎完全在客户端呈现(每个页面都没有不同的路由),并使用Stimulus.js处理,保存结果发生在服务器上。
是否有方法使此布局与自身兼容,如果没有,是否有任何变通方法?

dgtucam1

dgtucam11#

你必须声明你的data-controller

<div data-controller="eta">

  <div data-action="click->eta#advance" data-eta-time-param="1hr">
    <%= button_to "1 Hour", set_eta_order_path(@order) %>
  </div>

  <div data-action="click->eta#advance" data-eta-time-param="2hr">
    <%= button_to "2 Hours", set_eta_order_path(@order) %>
  </div>

</div>

个字符

相关问题