【发布时间】:2020-03-06 01:24:52
【问题描述】:
每次选择下拉菜单时,我都会尝试重新提交整个页面,并调用控制器操作。此时不需要 Ajax,因此需要 form_tag。
在 Haml 中,如何将 JavaScript 操作附加到每个选项,以便调用控制器操作并将选项 ID 传递给它?
= form_tag user_path(@user), method: :get do
.row
.col-sm-6
%p.pull-left
= 'from'
.col-sm-6
%select
%option Choose one
%option year onchange: 'javascript: $( this ).trigger("")'
%option month onchange: 'javascript: $( this ).trigger("")'
%option all time onchange: 'javascript: $( this ).trigger("")'
【问题讨论】:
-
我建议不要在每次选择下拉菜单时重新提交页面。这会导致页面的重新加载行为非常烦人,特别是如果某些内容需要一段时间才能加载。相反,使用 JavaScript 仅更改那些在焦点从下拉菜单更改为其他内容时需要更改的元素。
标签: ruby-on-rails ruby haml