How do you set a default value for a Html.TextBoxFor( ... ) text box?

asp.net-mvc, c#, textbox

Solution

You could change the model property to return a default value if it's null (or setting default values when creating the model) or you can use the `Html.TextBox` helper instead of `Html.TextBoxFor`:

<%: Html.TextBox("FirstName", Model.FirstName ?? "The default value", new { id = "FirstName", placeholder = "[First Name]" }) %>

or use the value-attribute:

<%: Html.TextBoxFor(model => model.FirstName, new { @Value = "The default value", id = "FirstName", placeholder = "[First Name]" }) %>

Problem

I know that you can create a textbox using ASP.NET that will automatically be filled with whatever the value in the model is by using ``` <%: Html.TextBoxFor(model => model.FirstName, new { id = "FirstName", placeholder = "[First Name]" }) %> ``` Is there a way to give it a default value if `model.FirstName` is null? I've tried adding a value attribute, but that didn't work. I also can't pass in a model with that value included, because it will affect other areas of the form.

Original source

Related problems