我有一个表单,其中包含一个用于保存搜索查询的字段,以及一个用于将查询值发送到另一个操作方法以执行搜索的按钮。现在我想将此参数作为查询字符串发送;不是形式参数。但是当我点击提交按钮时,它的值不会显示在地址栏上,并被发送为表单参数。
<% using (Html.BeginForm("Result", "Search", FormMethod.Post))
{ %>
<input id="query" name="query" type="text" value="<%: ViewData["InitialQuery"]%>"
class="search-field" />
<input id="search" type="submit" value="Search" class="search-button" />
<%} %>
public ActionResult Result(string query)
{
if (string.IsNullOrEmpty(query))
return RedirectToRoute("SearchEngineBasicSearch");
var search = new Search();
var results = search.PerformSearch(query);
if (results != null && results.Count() > 0)
return View("Result");
return View("Not-Found");
}
单击提交按钮后的URL是... / search / result我想成为... / search / result?query = someQueries
提前谢谢;)
答案 0 :(得分:3)
将FormMethod.Post
更改为FormMethod.Get
。