提交表单后,我想跳到锚标签。这可能吗?

我的简化形式看起来像这样

  <form onsubmit="searchFunc()">
    <input type="text" value="Search"  />
</form>


我希望它跳到锚点或div(理想)

<a name="myAnchor"></a>

<div id="myAnchor"></div>

最佳答案

返回HTML响应,或者重定向到末尾带有#myAnchor的URL;或页面中嵌入了一些Javascript,它将滚动/聚焦到所需的部分。

response.sendRedirect("customerEdit#myAnchor");


或在JS中:

$(document).ready( function(){
  var scrollToElement = $("#someElement");
  $(window).scrollTop( scrollToElement.offset().top);
});


HTML表单POST当然是到服务器的往返行程。因此,您无法在旧页面上滚动,而必须滚动或转到(通过重定向)新页面上的锚点。

如果您使用AJAX进行发布,那么您当然会留在现有页面上并且可以做您想做的任何事情。但这是另一回事。

07-24 17:08