2016-03-04 101 views
2

我試圖限制summernote中允許的字數。如何限制summernote中textarea的字數

例如,我只想限制爲50個字。

你有什麼想法嗎?

$(document).ready(function() { 
    $('#summernote').summernote({ 
     height: 20, 
    }); 
}); 

回答

-1

詞VS特點: 我建議你上的字符,而不是單詞的數量決定,因爲這是即使用戶輕鬆,一致。

Summernote創建contenteditable div象下面這樣:
enter image description here

有了這方面的知識,並使用下面的答案,就可以實現一個解決方案,你可以限制的字符數: Limiting Number of Characters in a ContentEditable div

2

以爲我會貢獻到這個職位,因爲這有助於我達到我想要的解決方案。似乎建議的答案尚未被接受。

我爲maxLength創建了一個變量,以下是我如何配置summernote回調。請注意,我正在使用的summernote版本的編輯區域爲.note-editable。下面的解決方案是打字稿,我有一個跨度,我目標顯示剩餘的字符數。

callbacks: { 
onKeydown(e) { 

    // The text method will ignore HTML tags and preserve non-breaking 
    // space allowing for a true character count 

    let content: string = $('.note-editable').text(); 

    // This checks if the character is alphanumeric (i.e. not a backspace or return key) 

    let isCharacter: boolean = (/[a-zA-Z0-9-_ ]/.test(String.fromCharCode(e.keyCode))); 

    // If the current content length is at max, preventDefault will disallow 
    // any more characters 

    if (isCharacter) { 
    if (content.length >= maxLength) { 
     e.preventDefault(); 
    } 
    } 
}, 
onKeyup(e) { 

    // After the result of checking the character and max length exceeded, 
    // take the resulting count and determine and display characters remaining 

    let content: string = $('.note-editable').text(); 
    let charactersRemaining: number = maxLength - content.length; 
    $('#SomeDivId span').text(charactersRemaining); 
}