asp.net-mvc – 如何将HTML5表单操作链接到ASP.NET MVC 4中的Controller Actio
发布时间:2020-05-28 06:03:04 所属栏目:asp.Net 来源:互联网
导读:我有一个基本的表单,我想通过调用视图的关联Controller类中的ActionResult方法来处理窗体中的按钮.以下是以下格式的HTML5代码: h2Welcome/h2div h3Login/h3 form method=post action= !-- what goes here -- Username: inp
|
我有一个基本的表单,我想通过调用视图的关联Controller类中的ActionResult方法来处理窗体中的按钮.以下是以下格式的HTML5代码: <h2>Welcome</h2>
<div>
<h3>Login</h3>
<form method="post" action= <!-- what goes here --> >
Username: <input type="text" name="username" /> <br />
Password: <input type="text" name="password" /> <br />
<input type="submit" value="Login">
<input type="submit" value="Create Account"/>
</form>
</div>
<!-- more code ... -->
相应的控制器代码如下: [HttpPost]
public ActionResult MyAction(string input,FormCollection collection)
{
switch (input)
{
case "Login":
// do some stuff...
break;
case "Create Account"
// do some other stuff...
break;
}
return View();
}
解决方法你使用HTML助手并拥有@using(Html.BeginForm())
{
Username: <input type="text" name="username" /> <br />
Password: <input type="text" name="password" /> <br />
<input type="submit" value="Login">
<input type="submit" value="Create Account"/>
}
或使用Url帮助器 <form method="post" action="@Url.Action("MyAction","MyController")" >
Html.BeginForm有几个(13)覆盖,您可以在其中指定更多信息,例如上传文件正在使用时的正常使用: @using(Html.BeginForm("myaction","mycontroller",FormMethod.Post,new {enctype = "multipart/form-data"}))
{
< ... >
}
如果不指定任何参数,Html.BeginForm()将创建一个指向当前控制器和当前操作的POST表单.举个例子,假设你有一个叫做帖子的控制器和一个叫做“删除”的动作 public ActionResult Delete(int id)
{
var model = db.GetPostById(id);
return View(model);
}
[HttpPost]
public ActionResult Delete(int id)
{
var model = db.GetPostById(id);
if(model != null)
db.DeletePost(id);
return RedirectToView("Index");
}
你的html页面将是这样的: <h2>Are you sure you want to delete?</h2>
<p>The Post named <strong>@Model.Title</strong> will be deleted.</p>
@using(Html.BeginForm())
{
<input type="submit" class="btn btn-danger" value="Delete Post"/>
<text>or</text>
@Url.ActionLink("go to list","Index")
} (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 使用ASP.NET WebApi中的HttpClient异步读取分块内容
- asp.net – PostbackUrl vs NavigateUrl
- 更新映像而不会闪烁ASP.NET C#
- asp.net – 我需要将.compiled文件复制到生产服务器?
- 一个ASP.Net页面中的多个reCAPTCHA
- asp.net – LINQ查询,其中boolean值为true或false
- asp.net-mvc – Html.EditorFor忽略我指定的类
- asp.net – 可以在机器之间复制Cookie以假冒用户吗?
- asp.net – dapper缓冲区/缓存的说明
- asp.net – 如何修改aspx页面的超时?
推荐文章
站长推荐
- asp-classic – 用经典的asp添加自定义标题
- asp.net – SignalR不再工作“找不到包含OwinSta
- asp.net-mvc-3 – 在具有默认值的模型上注释属性
- asp.net-mvc – 在asp.net mvc中使用Checkbox提交
- 版本化ASP.NET Web应用程序
- asp.net-web-api – 密码更改时如何使OAuth令牌无
- ASP.NET:预编译文件的文件名生成规则
- asp.net-mvc – RavenDB部署问题
- asp.net-mvc – DisplayFormat未应用于十进制值
- asp.net-web-api – 没有实体框架的WebAPI ODATA
热点阅读
