script pour limiter la taille d'un textarea
Ci dessous un petit script sans prétention pour limiter la saisie dans les textarea (
pré-requis jQuery). A noter que le contrôle du nombre de caractères doit être également être mis en place
côté serveur puisque le javascript s'exécute
côté client et peut être désactivé par l'utilisateur.
Le code JavaScript
$("[class*='limited']").each(function(i){
var c = $(this).attr("class");
var from = c.indexOf("(");
var to = c.indexOf(")");
var limit = c.substring(from+1,to);
$(this).keyup(function(){
if(($(this).val().length)>=parseInt(limit)-1){
$(this).val($(this).val().substring(0,limit));
return false;
}
});
});
Le code HTML
<textarea class="limited(10)"></textarea>
amélioration du script pour limiter la saisie dans un textarea
ci dessous le script "limiter la taille d'un textarea" amélioré pour prendre en compte le copier/coller via le menu contextuel (clic droit) :$(function(){ //Taille limitée $("[class*='limited']").each(function(i){ var c = $(this).attr("class"); var from = c.indexOf("("); var to = c.indexOf(")"); var limit = parseInt(c.substring(from+1,to)); $(this).bind("keyup keydown change",function(e){ if (this.value.length > limit) { this.value = this.value.substring(0, limit); } }); }); });