我是 ASP.net MVC 4 的新手(来自 webforms),所以我对如何执行某种类型的功能有点困惑。
我使用创建了一个下拉框
<select>
@for(var item in ViewBag.Items)
{
<option value="@item.ID">@item.name</option>
}
</select>
假设我创建了一个“添加”按钮。
<input type="submit" value="Add" />
我有一个表,我们将该表称为“汽车”,其中有一列称为“CarID”。
我想要发生的是点击添加按钮,一个新行将添加到 cars 表中,其中包含用户在下拉框中选择的汽车 ID。
我怎样才能做到这一点?
最佳答案
您需要在控件周围设置一个form
,并在select
上设置一些html属性。
<form action="/Cars/Add" method="post">
<select name="carId">
@for(var item in ViewBag.Items)
{
<option value="@item.ID">@item.name</option>
}
</select>
<input type="submit" value="Add" />
</form>
现在,创建一个名为 Cars
的新 Controller ,并添加一个 Add
操作。
public class CarsController : Controller
{
public ActionResult Add(int carId)
{
// TODO : Validate the carId
// TODO : Do the DB stuff to insert the car as you would in winforms
return View("AddComplete"); // or whatever view
}
}
上面的示例生成一个表单,它将向 Add
操作提交一个名为 carId
的变量。然后,操作处理程序将验证并将其添加到数据库中。
您必须记住,HTML 没有状态,即每次加载页面时,所有相关内容都必须传入或加载。
这些是 C# MVC 开发的一些基本概念,因此可能值得花时间阅读基础知识:-
http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/intro-to-aspnet-mvc-4 .
关于c# - ASP.net mvc 4 如何使用下拉菜单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18745498/