2014-01-24 64 views
0

我想在textarea中設置maxlength。我已經在textarea中定義了maxlength屬性,但它似乎沒用。請幫助。我的代碼:在textarea中設置maxlength

<html:textarea styleClass="textarea" maxlength="2100" cols="60" rows="3"> 

回答

1

試試這個javascript函數:

$(function(){ 
    $("#id").keypress(function() { 
    var maxlen = 100; //length as you desire 
    if ($(this).val().length > maxlen) { 
     return false; 
    } 
    }) 
}); 
+0

或者只是在提交時獲得長度並進行驗證。 –

+1

如果有人複製粘貼文本,則會失敗。 –

1

您必須編寫代碼爲兩個事件,KEYUP和複製粘貼這樣試試這個:

onKeyPress = "return (this.value.length < 2100);", onPaste = "return onTextAreaPaste(this,2100)" 

這裏是JS:

function onTextAreaPaste(textArea,size) {   
    var length = textArea.value.length; 
    if(window.clipboardData!=undefined) 
     length = textArea.value.length + window.clipboardData.getData('Text').length; 
    return length < size; 
} 
1

我最近遇到了一個問題textarea maxlength屬性,因爲換行符被認爲是1在Firefox2中IE和Chrome。所以我決定去尋求JavaScript來處理這個問題。

Here is how I handle the max length,它是一個jQuery插件,很容易設置,而且也沒有問題與瀏覽器的不同的行爲,再加上給你使用的字符的反饋。