您的位置:首页 > Web前端 > HTML

Html辅助方法 之 Form表单标签

2013-01-08 14:21 639 查看
一、Html.BeginForm  <form>标签

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


  new里面的叫做htmlAttributes,能够设置本控件的HTML属性,至于class前面加个@是因为class在C#里是关键字。

二、Html.TextBox  <inputtype="text"/>标签

//视图代码
@Html.TextBox("Age","23",new{@class="text1"})
//生成的HTML代码
<inputclass="text1"id="Age"name="Age"type="text"value="23"/>


三、Html.TextArea  <textarea>标签

//视图代码
@Html.TextArea("textarea1","我是一个textarea",new{@class="text_style"})
//生成的HTML代码
<textareaclass="text_style"cols="20"id="textarea1"name="textarea1"rows="2">
我是一个textarea
</textarea>


四、Html.Label  <label>标签

//视图代码
@Html.Label("label1","你好")
//生成的HTML代码
<labelfor="label1">你好</label>


五、Html.DropDownList  仅允许单选<select>

 //视图代码
@{
List<SelectListItem>list=newList<SelectListItem>{

newSelectListItem{Text="启用",Value="0",Selected=true},

newSelectListItem{Text="禁用",Value="1"}
};
}
@Html.DropDownList("state",list,null,new{})

  //生成的Html代码

  <selectid="state"name="state">
    <optionselected="selected"value="0">启用</option>
    <optionvalue="1">禁用</option>
  </select>



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

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


七、Html.Hidden  <inputtype="hidden"/>

//视图代码
@Html.Hidden("hidden1","我是一个隐藏域",new{});
//输出到浏览器的HTML代码
<inputid="hidden1"name="hidden1"type="hidden"value="我是一个隐藏域"/>;


八、Html.Password  <inputtype="password"/>

//视图代码
@Html.Password("password1",123321,new{@class="class1"})
//生成的HTML代码为
<inputclass="class1"id="password1"name="password1"type="password"value="123321"/>


九、Html.RadioButton  <inputtype="radio"/>

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


十、Html.CheckBox  <inputtype="checkbox"/>

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


十一、ActionLink    <a>

@Html.ActionLink("列表页","list")
//生成的HTML代码
<ahref="/Home/list">列表页</a>


十二、自动绑定

N、辅助方法在构建UI的同时会帮助绑定到控件

  例如:


     //这是一个controller
     publicActionResultIndex()
{
ViewBag.Name="张三";
returnView();
}
     //在视图里面有一个
     @Html.TextBox("Name");
     //浏览器中生成
     <inputid="Name"name="Name"type="text"value="张三"/>


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

 //后端代码
  publicclassMan
  {
    publicstringName
    {
      get;
      set;
    }
  }
  publicActionResultIndex()
  {
    ViewBag.man=newMan{Name="张三"};
    returnView();
  }
//视图代码
@Html.TextBox("man.Name")
//生成的HTML代码
<inputid="man_Name"name="man.Name"type="text"value=""/>


  留意到,id的名称中的.已经变为下划线,这是以为"."在Id里面是不合法的,也是要留给javascript用的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: