是否可以为在params中传递的提交按钮添加值?
我正在尝试向我的应用添加“预览”按钮/页面。
有没有办法为我的“post”和“preview”提交按钮添加不同的值,这些按钮在params散列中传递,以便我可以检查在控制器中按下了哪一个并相应地渲染视图?
这是最好的方法吗?
params
哈希的键只是元素的name
值。
如果您有两个名为“submit”的按钮,一个value="post"
且value="preview"
,那么您可以执行以下操作:
if params[:submit] == "preview"
您可以使用javascript添加按钮单击事件,该事件将填充隐藏值并将其与其余参数一起传递。 如果使用jQuery:
$("#post_button").click(function() { $("#form_action").val("post"); }); $("#preview_button").click(function() { $("#form_action").val("preview"); });
然后,您可以使用params['form_action']
访问控制器中的操作