asp.net mvc: why is Html.CheckBox generating an additional hidden input

后端 未结 11 1875
猫巷女王i
猫巷女王i 2020-11-22 13:59

I just noticed that Html.CheckBox(\"foo\") generates 2 inputs instead of one, anybody knows why is this so ?



        
11条回答
  •  情话喂你
    2020-11-22 14:53

    You can write a helper to prevent adding the hidden input:

    using System.Web.Mvc;
    using System.Web.Mvc.Html;
    
    public static class HelperUI
    {
        public static MvcHtmlString CheckBoxSimple(this HtmlHelper htmlHelper, string name, object htmlAttributes)
        {
            string checkBoxWithHidden = htmlHelper.CheckBox(name, htmlAttributes).ToHtmlString().Trim();
            string pureCheckBox = checkBoxWithHidden.Substring(0, checkBoxWithHidden.IndexOf("

    use it:

    @Html.CheckBoxSimple("foo", new {value = bar.Id})
    

提交回复
热议问题