从视图上的文本框将值作为参数发送到控制器中使用ASP.NET MVC的操作
问题描述:
我有一个Index
视图 - 这个视图上的所有内容都是一个文本框和一个提交按钮。当用户提交表单时,我希望在文本框中的值转到我在我的Form
操作中指定的控制器。下面的代码为我Index
观点:从视图上的文本框将值作为参数发送到控制器中使用ASP.NET MVC的操作
@using (Html.BeginForm("MovieDetails", "Home", FormMethod.Post))
{
<input type="text" class="typeahead-devs" id="movieName" />
<input type="submit" value="Create" name="Submit" />
}
当我点击提交,它需要我的行动MovieDetails
:
[HttpPost]
public ActionResult MovieDetails(string movieName)
{
response = client.GetAsync(string.Format("api/sixfilm?movieName={0}", movieName)).Result;
if (response.IsSuccessStatusCode)
{
var actors = response.Content.ReadAsAsync<IEnumerable<Actor>>().Result;
return View(actors);
}
else
{
return RedirectToAction("Index");
}
}
但是,movieName
是null
。任何想法为什么movieName
为空,我如何发送文本框的值到一个动作?
答
您没有为您的文本输入命名。更改
<input type="text" class="typeahead-devs" id="movieName" />
到
<input type="text" class="typeahead-devs" id="movieName" name="movieName" />
+0
这很有效。谢谢。 –
甜,另一种原因不明的downvote。当你不告诉我我做错了/应该把/ etc放在哪里时,这会让你感到沮丧。 –
+1为好问题 –
:)谢谢...... –