0

我有一个页面底部有一个表单。我在表单操作中使用了片段标识符,因为当出现错误时表单会在帖子中重新显示,并且我不希望用户必须向下滚动到它才能进行更正。

成功处理表单后,我执行重定向到同一页面并显示确认消息。我遇到的问题是浏览器在 302 重定向时保留了片段标识符。是否有强制浏览器清除/删除片段标识符的技巧?


假设我正在查看用户个人资料页面,页面上有一个地址表单。表单动作将是/user/profile#AddressForm. 如果表单提交时出错,页面会自动滚动到地址表单,以便用户更正错误。如果没有错误,我想重定向到/user/profile没有片段标识符的 。我遇到的问题是浏览器保留了片段标识符,并且页面向下滚动到表单,而不是停留在顶部。

4

1 回答 1

1

更新

现在我看到了实际问题是什么,我建议重定向到不存在的锚点

header ('Location: /user/profile#top');

有。

$form->setAction ($this->getRequest ()->getRequestUri ());
于 2012-11-17T18:09:21.100 回答