【发布时间】:2011-08-29 10:20:33
【问题描述】:
我的问题是,假设我有一个 asp:textbox 并且我没有指定它的 MaxLength 属性,那么默认长度是多少,它将是无限的,或者对字符数有一些限制。这个问题似乎很容易回答某人,但我不清楚
提前谢谢你
【问题讨论】:
-
为什么有人对这个问题很生气。麻烦放一些cmets我应该如何改进它。
标签: asp.net html textbox default-value maxlength
我的问题是,假设我有一个 asp:textbox 并且我没有指定它的 MaxLength 属性,那么默认长度是多少,它将是无限的,或者对字符数有一些限制。这个问题似乎很容易回答某人,但我不清楚
提前谢谢你
【问题讨论】:
标签: asp.net html textbox default-value maxlength
默认值为 0 表示没有限制。参考请访问this链接
【讨论】:
(由反射器监视的代码...)
[DefaultValue(0), Themeable(false), WebSysDescription("TextBox_MaxLength"), WebCategory("Behavior")]
public virtual int MaxLength
{
get
{
object obj2 = this.ViewState["MaxLength"];
if (obj2 != null)
{
return (int) obj2;
}
return 0;
}
set
{
if (value < 0)
{
throw new ArgumentOutOfRangeException("value");
}
this.ViewState["MaxLength"] = value;
}
}
此属性将被以下代码使用:
int maxLength = this.MaxLength;
if (maxLength > 0)
{
writer.AddAttribute(HtmlTextWriterAttribute.Maxlength, maxLength.ToString(NumberFormatInfo.InvariantInfo));
}
maxLength = this.Columns;
if (maxLength > 0)
{
writer.AddAttribute(HtmlTextWriterAttribute.Size, maxLength.ToString(NumberFormatInfo.InvariantInfo));
}
【讨论】:
如果您没有明确指定MaxLength,则可以在控件中输入的文本的最大长度仅受available memory的限制
【讨论】:
<asp:TextBox /> 映射到 HTML <input type="text" /> 控件。
HTML-<input type="text" /> 控件的默认最大长度是根据here 524288。(= 512 x 1024 字符)
<asp:TextBox TextMode="MultiLine" /> 映射到 HTML <textarea />。
默认最大长度是无限的。文本的最大长度受用于向服务器发送数据的方法(“GET”或“POST”)以及服务器接收大量数据的能力限制。 (ASP.NET web.config <httpRuntime maxRequestLength="xxx kb" />)
【讨论】: