2010-01-17 28 views

回答

1

因爲textbox-mode多行顯示爲textarea,textarea不包含maxlength屬性。

是,應用JavaScript和,以確保加也長一些服務器端檢查(如果客戶端禁用JavaScript)的

0

文本框,當多行,將呈現不包含文本區MaxLength屬性。

根據TextMode屬性的不同,TextBox控件的行爲應該與MaxLength屬性的輸出不同。如果是單行,則呈現MaxLength,如果不是,則呈現JavaScript。我認爲這是一個不好的行爲或者可能是一個錯誤。

在這些情況下,當您好奇時,您可以隨時查看微軟代碼Reflector

這裏是在AddAttributesToRender方法MaxLength屬性的渲染代碼片段:

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)); 
    } 
相關問題