有没有人知道如何解决这个问题,我有一个搜索框,当我输入一个搜索短语并提交表格时,网址是:
http://localhost:50435/Search-Results-For?q=hotels&Option=Web&Page=1
返回结果后,我可以翻页,网址为:
http://localhost:50435/Search-Results-For/hotels/web/2
但是,如果我尝试进行另一次搜索,则该搜索将附加到上面的网址:
http://localhost:50435/Search-Results-For/hotels/web/2?q=poole&Option=web&Page=2
我不知道如何解决这个问题,我尝试将寻呼机置于部分视图中,更改参数但似乎没有任何效果。
之前是否有人遇到此问题或知道如何解决此问题。
传呼机:
<div id="dvPagePager">@Html.PagedListPager((IPagedList)ViewBag.SearchResults, page => Url.Action("Results", new { Page = page, q = @ViewBag.q, Option = @ViewBag.b}), PagedListRenderOptions.OnlyShowFivePagesAtATime)</div>
形式:
@using (Html.BeginRouteForm("SearchEngine", FormMethod.Get, new { @id = "frmSearchEngine" }))
{
{ Html.RenderAction("pvSearchForm", "Home"); }
//Html.RenderPartial("~/Views/Shared/pvSearchForm.cshtml");
}
路线:
routes.MapRoute(
name: "SearchEngine",
url: "Search-Results-For/{q}/{Option}/{Page}",
defaults: new { controller = "Search", action = "Results", q = UrlParameter.Optional, Option = UrlParameter.Optional, Page = UrlParameter.Optional }
);
答案 0 :(得分:0)
通过使表单成为标准的html表单解决了这个问题,添加了一个带有http的URL.Action,这使得在执行新帖子时刷新了网址