<div>
@using(Html.BeginForm("Test","Default"))
{
4        @Html.TextBox("name","rupeng");
         @Html.Label("UserName","用户名:")@Html.TextBox("UserName")
}
</div>

自定义属性:

1、定义一个Model:Person类

 class Person
{
public int Age{get;set;}
    public int Height{get;set;
}
<div>
@using(Html.BeginForm("Test","Default"))
{
        Person p1 = new Person(){Age=66,Height=166}
        @Html.TextBox("name","rupeng",p1);//生成的HTML代码中就会添加上Age属性和Height属性         
}
</div>

或者经常用匿名类

 <div>
@using(Html.BeginForm("Test","Default"))
{
        var p1 = new {haha=66,xixi=166}
        @Html.TextBox("name","rupeng",p1);//生成的HTML代码中就会添加上haha属性和xixi属性         
}
</div>

实际应用:

定义一个class类属性

<style type="text/css">
.warn{
color:red;
}
</style>
<div>
@using(Html.BeginForm("Test","Default"))
{
    @Html.TextBox("name","rupeng",new {@class="warn",data_val="haha"});//生成的HTML代码中就会添加上class属性(值为warn)和data-val属性         
}
</div>

用于表单验证:

有一个Model,Person类

 public class Person
{
[DisplayName("用户名")]
[Required]
[StringLength()]
public string UserName { get; set; } [DisplayName("密码")]
[Required]
[StringLength()]
public string Password { get; set; } }

cshtml中代码

 @using (Html.BeginForm("Login","Default")) { <span>用户名:</span>@Html.TextBox("UserName") <span>密码:</span>@Html.Password("Password") <input type="submit" value="提交"/> @Html.ValidationSummary() }

注:如果字段比较多,汇总消息显然不合适,那么就用@Html.ValidationMessage("UserName")值只显示UserName属性相关的错误信息。

比如:

 @using (Html.BeginForm("Login","Default")) { <span>用户名:</span>@Html.TextBox("UserName") <span> @Html.ValidationMessage("UserName")</br>
密码:</span>@Html.Password("Password") <input type="submit" value="提交"/> }

controller中代码

 public ActionResult Index() { return View(); }
public ActionResult Login(Person model)
{
if(!ModelState.IsValid)
{
return View("Index");//一定要返回表单原始页面
}
return Content(model.UserName);
}

  

HtmlHelper1的更多相关文章

随机推荐

  1. GNU 交叉工具链的介绍与使用

    常用工具介绍 名称 归属 作用 arm­linux­as binutils 编译 ARM 汇编程序 arm­linux­ar binutils 把多个.o 合并成一个.o 或静态库(.a) arm­l ...

  2. matlab 求已知概率密度函数的随机数生成

    N=10000; %需要随机数的个数 a=zeros(N,1); %存放随机数的数列 n=0; f1=@(t) 1./(1.2*pi*(1+5*(t-7.3).^2)); f2=@(t) 1./(1. ...

  3. Java 基础 - 原生类型

    更详细的说明,请参考: Java 原生类型与包装器类型深度剖析,https://blog.csdn.net/justloveyou_/article/details/52651211 一. 原生类型与 ...

  4. 配置文件一mybatis-config.xml

    <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC & ...

  5. 弹性网卡支持私网多IP

    摘要: 弹性网卡支持多IP功能可以最多在一块弹性网卡配置20个私网IP地址,特别适用于于以下场景. 1.单个服务器上托管多个应用,提升实例利用率,每个应用对外暴露一个独立的服务IP地址. 2.当实例发 ...

  6. 网页存储倒计时与解决网页cookie保存多个相同key问题

    短信倒计时多用网页临时存储,这可以保证网页在关闭状态也可记时. <p class="test_button" id="getcode">获取验证码& ...

  7. iOS开发NSMutableArray数组越界处理

    #import "NSArray+CrashArray.h" #import <objc/runtime.h> @implementation NSObject (Un ...

  8. JAVA基础_类加载器

    什么是类加载器 类加载器是Java语言在1.0版本就引入的.最初是为了满足JavaApplet需要.现在类加载器在Web容器和OSGI中得到了广泛的应用,一般来说,Java应用的开发人员不需要直接同类 ...

  9. ims注册与注销

    ims注册流程: 步骤1:当IMS和SIM访问已经就绪时,IMC将在满足条件后触发IMS注册到IMCB.步骤2.3:IMCB请求IMSA/IMSM获取IMS PDN和P-CSCF,然后触发VoLTE ...

  10. 第九篇:Spring的applicationContext.xml配置总结

    在前面的一篇日志中,记录了web.xml配置启动的顺序,web启动到监听器ContextLoaderListener时,开始加载spring的配置文件applicationContext.xml(通常 ...