Skip to content Skip to sidebar Skip to footer

How Can I Set Default Value For HiddenFieldFor In Asp.Net MVC

i am using HiddenFor with model binding which is binding value to it. i want to reset the binded value to zero.How can i do it? i tried this but it is not working... <% foreach

Solution 1:

You can create your own helper extension for that:

public static MvcHtmlString HiddenFor<TModel, TProperty>(this HtmlHelper<TModel> helper, Expression<Func<TModel, TProperty>> expression, object value, object htmlAttributes)
{
    var propertyName = ExpressionHelper.GetExpressionText(expression);

    var input = new TagBuilder("input");
    input.MergeAttribute("id", helper.AttributeEncode(helper.ViewData.TemplateInfo.GetFullHtmlFieldId(propertyName)));
    input.MergeAttribute("name", helper.AttributeEncode(helper.ViewData.TemplateInfo.GetFullHtmlFieldName(propertyName)));
    input.MergeAttribute("value", value.ToString());
    input.MergeAttribute("type", "hidden");
    input.MergeAttributes(new RouteValueDictionary(htmlAttributes));

    return MvcHtmlString.Create(input.ToString());
}

Solution 2:

Simply set the ID property of your model in the controller action to 0.


Post a Comment for "How Can I Set Default Value For HiddenFieldFor In Asp.Net MVC"