【发布时间】:2017-10-24 16:48:34
【问题描述】:
我想在我的 current_page 函数中从 js 文件运行我的脚本
为此,我正在尝试类似的方法
第 1 步 (在我的href中插入一个参数(idz = 1 || 2)以便以后使用)
groups/show.html.erb
<%- if current_page?("/groups/#{task.group.id}/")%>
<a href="/tasks/<%=task.id%>/undone?idz='1'" data-method="patch" data-remote="true" class="task_done_btn">undone</a>
<% elsif current_page?("/groups/#{task.group.id}/task_board") %>
<a href="/tasks/<%=task.id%>/undone?idz='2'" data-method="patch" data-remote="true" class="task_done_btn">undone</a>
<% end %>
第二步(将第一步定义的idz转入局部变量)
控制器/tasks_controller.rb
def undone
respond_to do |format|
@idz = idz
format.html { redirect_back}
format.js
end
end
第 3 步(使用 idz 作为条件来运行我的 jquery)
tasks/undone.js.erb
<%- if @idz == 1 %>
// jquery 1
<% elsif @idz == 2 %>
// jquery 2
<% end %>
但是这种方法不起作用(--)。你知道我该怎么解决吗?当我想将我的 params(idz) 的数量归因于局部变量时,我认为问题附加到了第 2 步中
【问题讨论】:
-
你应该这样做
@idz = params[:idz] -
感谢您的回答@7urkm3n,我终于成功了,但最终不是一个优雅的解决方案。所以我正在尝试完全重制
标签: jquery ruby-on-rails ruby