Html辅助方法 之 Form表单标签
一、Html.BeginForm <form>标签

//视图代码
@using (Html.BeginForm("search", "home", FormMethod.Get),new { target="_black",@class="form1" })
{
<input type="text" value="" />
}
//生成的HTML代码
<form action="/home/search" class="form1" method="get" target="_black">
<input type="text" value="" />
</form>

new里面的叫做htmlAttributes,能够设置本控件的HTML属性,至于class前面加个@是因为class在C#里是关键字。
二、Html.TextBox <input type="text" /> 标签
//视图代码
@Html.TextBox("Age", "23", new { @class="text1" })
//生成的HTML代码
<input class="text1" id="Age" name="Age" type="text" value="23" />
三、Html.TextArea <textarea>标签
//视图代码
@Html.TextArea("textarea1", "我是一个textarea", new { @class="text_style" })
//生成的HTML代码
<textarea class="text_style" cols="20" id="textarea1" name="textarea1" rows="2">
我是一个textarea
</textarea>
四、Html.Label <label>标签
//视图代码
@Html.Label("label1","你好")
//生成的HTML代码
<label for="label1">你好</label>
五、Html.DropDownList 仅允许单选<select>

//视图代码
@{
List<SelectListItem> list = new List<SelectListItem> { new SelectListItem { Text = "启用", Value = "0",Selected = true}, new SelectListItem { Text = "禁用", Value = "1" }
};
}
@Html.DropDownList("state",list,null,new{})
//生成的Html代码
<select id="state" name="state">
<option selected="selected" value="0">启用</option>
<option value="1">禁用</option>
</select>

六、Html.ListBox 允许多选的<select>

//视图代码为
@{
List<SelectListItem> list = new List<SelectListItem> {
new SelectListItem { Text = "启用", Value = "0",Selected = true},
new SelectListItem { Text = "禁用", Value = "1" }
};
}
@Html.ListBox("state",list)
//生成的HTML代码为
<select id="state" multiple="multiple" name="state">
<option selected="selected" value="0">启用</option>
<option value="1">禁用</option>
</select>

七、Html.Hidden <input type="hidden" />
//视图代码
@Html.Hidden("hidden1","我是一个隐藏域",new{});
//输出到浏览器的HTML代码
<input id="hidden1" name="hidden1" type="hidden" value="我是一个隐藏域" />;
八、Html.Password <input type="password" />
//视图代码
@Html.Password("password1", 123321, new { @class="class1" })
//生成的HTML代码为
<input class="class1" id="password1" name="password1" type="password" value="123321" />
九、Html.RadioButton <input type="radio" />

//视图代码
@Html.RadioButton("radio1",1,false)
@Html.RadioButton("radio1",2,false)
@Html.RadioButton("radio1",3,true)
//生成的HTML代码为
<input id="radio1" name="radio1" type="radio" value="1" />
<input id="radio1" name="radio1" type="radio" value="2" />
<input checked="checked" id="radio1" name="radio1" type="radio" value="3" />

十、Html.CheckBox <input type="checkbox" />

//视图代码
男人:@Html.CheckBox("check1", true, new { });
女人:@Html.CheckBox("check1", false, new { });
其它:@Html.CheckBox("check1", false, new { });
//生成的HTML代码为:
男人:<input checked="checked" id="check1" name="check1" type="checkbox" value="true" /><input name="check1" type="hidden" value="false" />;
女人:<input id="check1" name="check1" type="checkbox" value="true" /><input name="check1" type="hidden" value="false" />;
其它:<input id="check1" name="check1" type="checkbox" value="true" /><input name="check1" type="hidden" value="false" />;

十一、ActionLink <a>
@Html.ActionLink("列表页", "list")
//生成的HTML代码
<a href="/Home/list">列表页</a>
十二、自动绑定
N、辅助方法在构建UI的同时会帮助绑定到控件
例如:

//这是一个controller
public ActionResult Index()
{
ViewBag.Name = "张三";
return View();
}
//在视图里面有一个
@Html.TextBox("Name");
//浏览器中生成
<input id="Name" name="Name" type="text" value="张三" />

我们看到,在构建UI的时候,我们设置了一个ViewBag.Name,而同时视图里面又有一个TextBox("Name");在相同名称的情况下,MVC自动为我们绑定了数据。再来看一个:

//后端代码
public class Man
{
public string Name
{
get;
set;
}
}
public ActionResult Index()
{
ViewBag.man = new Man { Name = "张三" };
return View();
}
//视图代码
@Html.TextBox("man.Name")
//生成的HTML代码
<input id="man_Name" name="man.Name" type="text" value="" />

留意到,id的名称中的.已经变为下划线,这是以为"."在Id里面是不合法的,也是要留给javascript用的。
Html辅助方法 之 Form表单标签的更多相关文章
- 【HTML】--- 列表、表格、form表单标签
Html常用标签(2) 上篇博客讲了些常用的html标签 :[HTML]---常用标签(1) 这里主要讲 列表.表格标签和 form表单标签. 一.列表.表格标签 1.列表标签 概念 把内容以列表的形 ...
- 使用ajax方法实现form表单的提交(附源码)
写在前面的话 在使用form表单的时候,一旦点击提交触发submit事件,一般会使得页面跳转,页面间的跳转等行为的控制权往往在后端,后端会控制页面的跳转及数据传递,但是在某些时候不希望页面跳转,或者说 ...
- Unit 2.前端之html--table(表格),form(表单)标签
一.table标签 作用:定义html表格.一个table标签元素至少包含 thead(表头),tbody(表主题),还可以有tfoot(表底部) html表格游table元素及一个或者多个tr,th ...
- 使用ajax方法实现form表单的提交
作者:13 GitHub:https://github.com/ZHENFENG13 版权声明:本文为原创文章,未经允许不得转载. 写在前面的话 在使用form表单的时候,一旦点击提交触发submit ...
- HTML之form表单标签的学习
from表单 表示 <form>form表单域</form> 作用 收集并替提交用户数据给指定服务器 属性 action:收集的数据的提交地址(也就是URL) method:收 ...
- java:JavaScript2:(setTimeout定时器,history.go()前进/后退,navigator.userAgent判断浏览器,location.href,五种方法获取标签属性,setAttribute,innerHTML,三种方法获取form表单信息,JS表单验证,DOM对象,form表单操作)
1.open,setTimeout,setInterval,clearInterval,clearTimeout <!DOCTYPE> <html> <head> ...
- [转]SpringMVC<from:form>表单标签和<input>表单标签简介
原文地址:https://blog.csdn.net/hp_yangpeng/article/details/51906654 在使用SpringMVC的时候我们可以使用Spring封装的一系列表单标 ...
- HTML的<form>表单标签
表单 HTML 表单用于搜集不同类型的用户输入. ㈠Form标签 ⑴form标签简介 在HTML中,如果创建一个表单,就把各种表单标签放在<form></form>标签内部.我 ...
- HTML table、form表单标签的介绍
1. <table>标签 1.1说明: 在HTML 中定义表格布局. 1.2格式: <table> <caption></caption> <tr ...
随机推荐
- 再不升级你就Out了 Windows8.1安装实录
2013年10月17日,美国时间凌晨4:00,北京时间晚上19:00,微软于总部雷蒙德正式发布了 Windows 8 的一个升级版本,Windows 8.1. Windows 8.1 可以进行全新安装 ...
- 开发反模式(GUID) - 伪键洁癖
一.目标:整理数据 有的人有强迫症,他们会为一系列数据的断档而抓狂. 一方面,Id为3这一行确实发生过一些事情,为什么这个查询不返回Id为3的这一行?这条记录数据丢失了吗?那个Column到底是什么? ...
- gnuplot
一. 简介 gnuplot是一个命令行驱动的科学绘图工具,可将数学函数或数值资料以平面图或立体图的形式画在不同种类终端机或绘图输出装置上.gnuplot既支持命令行交互模式,也支持脚本. 二. 特性 ...
- awk详解
一.简介 强大的文本分析工具,基于指定规则浏览和抽取信息.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理.awk有3个不同版本: awk.nawk和ga ...
- 深入浅出Node.js (4) - 异步编程
4.1 函数式编程 4.1.1 高阶函数 4.1.2 偏函数用法 4.2 异步编程的优势与难点 4.2.1 优势 4.2.2 难点 4.3 异步编程解决方案 4.3.1 事件发布/订阅模式 4.3.2 ...
- 【转】android cts测试方法及步骤
原文网址:http://blog.csdn.net/shi_xin/article/details/42262675 1.CTS下载 打开下面网址, http://source.android.com ...
- 【转】git 学习笔记( 随时更新中…… 最后更新日期201304281518)--不错
原文网址:http://blog.csdn.net/yasin_lee/article/details/5975070 GIT 是版本管理的未来! 推荐几个GIT教程网站 http://www-c ...
- HDU 1074 Doing Homework (状态压缩 DP)
题目大意: 有 n 项作业需要完成,每项作业有上交的期限和需完成的天数,若某项作业晚交一天则扣一分.输入每项作业时包括三部分,作业名称,上交期限,完成所需要的天数.求出完成所有作业时所扣掉的分数最少, ...
- poj 2229 Sumsets DP
题意:给定一个整数N (1<= N <= 1000000),求出以 N为和 的式子有多少个,式子中的加数只能有2的幂次方组成 如5 : 1+1+1+1+1.1+1+1+2.1+2+2.1+ ...
- hdu 3232 Crossing Rivers(期望 + 数学推导 + 分类讨论,水题不水)
Problem Description You live in a village but work in another village. You decided to follow the s ...