在rails视图中使用隐藏字段

时间:2015-06-25 20:07:15

标签: ruby-on-rails-4

在html视图中使用隐藏字段的最佳做法是什么?

在我的html.erb中,我需要检查一个值是否存在,如果存在,那么你想确保一个按钮保持禁用状态。

我可以像这样在ruby代码中设置一个隐藏字段;

<% if @is_draft %>
<input type="hidden" id="isdraft "value="true"><% end %>

然后我可以在我的jquery代码中访问它吗?

这是接受的做法吗?请注意,javascript位于其自己的文件中,该脚本不在html.erb文件中

1 个答案:

答案 0 :(得分:0)

大多数时候,它被视为非常差的做法。

相反,通常最好在检查条件后将服务器端的按钮呈现为禁用状态。 还要确保清理此表单发出的请求(虽然您的条件不允许,但单击按钮)。用户可以取消禁用该按钮并单击它。

如果您发现由于某种原因必须以HTML格式保存一些信息,我会使用数据 - * - 属性!

希望有所帮助!

EDIT伪代码示例:

# MyView.html.erb
<% unless @is_draft %>
   <%= render partial: 'my_checkbox_button_enabling', format: [:js] %>
<% end %>

<%= button_tag "My nice button", disabled: true, id: "my-button" %>