2012-05-14 11 views

risposta

27

Si può fare così:

@Html.TextArea("EventNature",new { maxlength=50, // or other value 
            style = "width: 200px; height: 100px;" }) 

Basta essere consapevoli che è attributo un HTML5

maxlength HTML5
Il numero massimo di caratteri (Unicode code point) che l'utente può accedere. Se non è specificato, l'utente può inserire un numero illimitato di caratteri.

MDN


Javascript (utilizzando jQuery) convalida per HTML 5 <:

$('#EventNature').keypress(function(){ 
    if (this.value.length >= 10) // allowing you to enter only 10 chars. 
    return false;   
});​ 

DEMO

+0

Thnx ... in ogni caso devo usare Javascript per la convalida quando si tratta di rito browser incompatibile con HTML5? – Kamil

+0

@ Kamil. Esatto, non è così difficile farlo a proposito. – gdoron

+0

@ Kamil. Sai come? – gdoron

-1

Come posso impostare l'attributo Maxlength per questo controllo?

L'attributo maxlength non è valido per l'elemento <textarea>. Questo non è un limite di MVC ASP.NET. Nella specifica HTML questo attributo è definito solo per i campi di input di testo semplici. Se si desidera limitare il numero di caratteri che un utente può digitare in una textarea, è possibile utilizzare javascript.

+0

Non è vero. maxlength è un attributo HTML5. – gdoron

+0

@gdoron. per il rasoio ??? –

+0

@ bitoshi.n. Rasoio? è solo html, il rasoio è uno strumento che ti aiuta a creare l'HTML. – gdoron

0
<p>Customer Number: @Html.TextBox("SearchString1",null, new {maxlength = 6}) 
<input type="submit" value="Filter" /></p> 
Quanto sopra

è un esempio che ha funzionato per me per limitare il numero massimo di caratteri consentiti da inserire. I suggerimenti che mostrano che è possibile utilizzare le frecce quando si utilizza un ambiente .Net sono estremamente utili. (* nota, questo non modifica fisicamente le dimensioni della casella di testo)

"SearchString1" = Nome stringa ----- null = Valore oggetto ------ new {maxlength = 6} = oggetto htmlAttributes

+0

cosa aggiunge oltre la risposta già accettata? – dove

1

È inoltre possibile limitare la lunghezza del testo, in questo modo:

<textarea id="EventNature1" maxlength="10"></textarea> 

     OR 
@Html.TexareaFor(m=>m.Name,new{@maxlength="10"}) 
2

questo funziona anche per il TextAreaFor helper con più di un tipo anonimo in new

Confermato a funzionano bene in Visual Studio 2015 con MVC 5

@Html.TextAreaFor(model => model.Comments, 5, 500, new {maxlength=4000, @class = "form-control" }) 
Problemi correlati