我有一个表单,我不想通过ajax或jquery提交表单,以便在提交时添加会在浏览器中为url生成一个id,这样当页面重新加载时会自动将scrowl下载到页面上的id < / p>
我的表格是
<%= form_for([activity, activity.talks.build],remote: true) do |f| %>
<%= f.text_field :details, :class=>"input-block-level", :placeholder=>"write a comment" %>
<% end%>
<ul id="chat">
<%= render activity.talks %>
</ul>
我对此表单的创建操作是
def create
@activity = Activity.find(params[:activity_id])
#@message = Message.create!(params[:message])
@talk = @activity.talks.create!(talk_params)
@talk.user = current_user
@talk.save
redirect_to user_path(current_user)
end
感谢...
答案 0 :(得分:0)
如果您希望页面滚动到页面中的特定点,您可以创建一个html锚点并将其作为选项传递给路径生成器
例如尝试
redirect_to user_path(current_user, , :anchor => "user_#{current_user.id}")
但也要确保你有:
<a name="user_<%= user.id %>"</a>
在每个用户的页面上。
答案 1 :(得分:0)
我不确定我是否理解,但你不应该首先重定向到talk_path而不是user_path吗?因为我假设你想重定向到谈话页面。 Taryn说应该工作,只需进行适当的更改即可链接到您想要的位置。我肯定会删除
remote: true
从表格中。 with remote:true你不会得到任何重定向