0

我有一个使用 mvc 3 ajax 表单的搜索功能。一切正常。然而,因为表单包含几个文本框和选项可供选择,并且因为它是一个 ajax 表单,所以用户不会注意到结果,他必须向下滚动才能看到结果。如何将锚点添加到 ajax 表单,并且用户将在单击搜索按钮后自动重定向(向下滚动)到锚点?谢谢

4

1 回答 1

1

首先,您需要在 ajax 表单的成功发布请求上添加回调:

Ajax.BeginForm("Search", new AjaxOptions {OnSuccess = "navigateToSearchResult"})

其中 navigateToSearchResult 是 javascript 函数。在此函数中,您可以在当前页面上指定锚点:

function navigateToSearchResult(result) {
    var elementId = getResultElementIdFromResult(result);
    //set hash to empty because browser doesn't scroll to element
    // if new and current hash are the same 
    window.location.hash = "";
    window.location.hash = "#" + elementId;
}
于 2013-06-09T22:58:53.810 回答