Some examples I found that apparently worked with older versions of mvc suggest that there was a length parameter of sorts:
<%=Html.TextBox("test", 50)%>
But that may have been mistakenly setting the value.
How do this work in the current release? Passing in the style doesn't appear to have any effect.
This question is related to
asp.net-mvc
I -strongly- recommend build your HtmlHelpers. I think that apsx code will be more readable, reliable and durable.
Follow the link; http://msdn.microsoft.com/en-us/library/system.web.mvc.htmlhelper.aspx
Don't use the length parameter as it will not work with all browsers. The best way is to set a style on the input tag.
<input style="width:100px" />
Don't use the length parameter as it will not work with all browsers. The best way is to set a style on the input tag.
<input style="width:100px" />
For this you have to use HtmlAttributes, but there is a catch: HtmlAttributes and css class .
you can define it like this:
new { Attrubute="Value", AttributeTwo = IntegerValue, @class="className" };
and here is a more realistic example:
new { style="width:50px" };
new { style="width:50px", maxsize = 50 };
new {size=30, @class="required"}
and finally in:
MVC 1
<%= Html.TextBox("test", new { style="width:50px" }) %>
MVC 2
<%= Html.TextBox("test", null, new { style="width:50px" }) %>
MVC 3
@Html.TextBox("test", null, new { style="width:50px" })
Something like this should work:
<%=Html.TextBox("test", new { style="width:50px" })%>
Or better:
<%=Html.TextBox("test")%>
<style type="text/css">
input[type="text"] { width:50px; }
</style>
new { style="width:50px", maxsize = 50 };
should be
new { style="width:50px", maxlength = 50 };
My real sample for MVC 3 is here:
<% using (Html.BeginForm()) { %>
<p>
Start Date: <%: Html.TextBox("datepicker1", DateTime.Now.ToString("MM/dd/yyyy"), new { style = "width:80px;", maxlength = 10 })%>
End Date: <%: Html.TextBox("datepicker2", DateTime.Now.ToString("MM/dd/yyyy"), new { style = "width:80px;", maxlength = 10 })%>
<input type="submit" name="btnSubmit" value="Search" />
</p>
<% } %>
So, we have following
"datepicker1" - ID of the control
DateTime.Now.ToString("MM/dd/yyyy") - value by default
style = "width:80px;" - width of the textbox
maxlength = 10 - we can input 10 characters only
Don't use the length parameter as it will not work with all browsers. The best way is to set a style on the input tag.
<input style="width:100px" />
I -strongly- recommend build your HtmlHelpers. I think that apsx code will be more readable, reliable and durable.
Follow the link; http://msdn.microsoft.com/en-us/library/system.web.mvc.htmlhelper.aspx
Something like this should work:
<%=Html.TextBox("test", new { style="width:50px" })%>
Or better:
<%=Html.TextBox("test")%>
<style type="text/css">
input[type="text"] { width:50px; }
</style>
For this you have to use HtmlAttributes, but there is a catch: HtmlAttributes and css class .
you can define it like this:
new { Attrubute="Value", AttributeTwo = IntegerValue, @class="className" };
and here is a more realistic example:
new { style="width:50px" };
new { style="width:50px", maxsize = 50 };
new {size=30, @class="required"}
and finally in:
MVC 1
<%= Html.TextBox("test", new { style="width:50px" }) %>
MVC 2
<%= Html.TextBox("test", null, new { style="width:50px" }) %>
MVC 3
@Html.TextBox("test", null, new { style="width:50px" })
Set textbox with and maxlength in mvc3.0
@Html.TextBoxFor(model => model.SearchUrl, new { style = "width:650px;",maxlength = 250 })
new { style="width:50px", maxsize = 50 };
should be
new { style="width:50px", maxlength = 50 };
My real sample for MVC 3 is here:
<% using (Html.BeginForm()) { %>
<p>
Start Date: <%: Html.TextBox("datepicker1", DateTime.Now.ToString("MM/dd/yyyy"), new { style = "width:80px;", maxlength = 10 })%>
End Date: <%: Html.TextBox("datepicker2", DateTime.Now.ToString("MM/dd/yyyy"), new { style = "width:80px;", maxlength = 10 })%>
<input type="submit" name="btnSubmit" value="Search" />
</p>
<% } %>
So, we have following
"datepicker1" - ID of the control
DateTime.Now.ToString("MM/dd/yyyy") - value by default
style = "width:80px;" - width of the textbox
maxlength = 10 - we can input 10 characters only
Something like this should work:
<%=Html.TextBox("test", new { style="width:50px" })%>
Or better:
<%=Html.TextBox("test")%>
<style type="text/css">
input[type="text"] { width:50px; }
</style>
Source: Stackoverflow.com