Bonjour,
J'ai un probleme, j'ai passé toute l'après-midi à éssayer de faire marcher un script que j'ai trouver sur le net. C'est un classe qui est devrais créer un textarea dynamique qui ce redimentionne suivant le nombre de ligne que l'on écrit dedans. Enfin bref voici le code en question :
La classe :function DTextarea(nom,cols)
{
this.countLines = function() {
var strtocount=$(nom).value;
var cols=$(nom).cols;
var hard_lines = 1;
var last = 0;
while (
true ) {
last = strtocount.indexOf("\n", last+1);
hard_lines ++;
if ( last == -1 ) break;
}
var soft_lines = Math.round(strtocount.length /
(cols-1));
var hard = eval("hard_lines " + unescape("%3e") +
"soft_lines;");
if ( hard ) soft_lines = hard_lines;
return soft_lines;
}
//est appellé a chaque
frappe sur le clavier
this.keyhit = function(e) {
var
touche=(window.Event)?e.which:e.keyCode;//pour savoir s'il s'agit de Msie ou de
Netscape
if(touche==13 || touche==8 || touche==0)
$(nom).rows=this.countLines();
}
this.show =
function(){
document.write('<textarea name="'+nom+'"
cols="'+cols+'" rows="2" id="'+nom+'" onkeypress="return
'+nom+'.keyhit(event);"></textarea>');
}
}
L'utilisation :<script type="text/javascript"
src="dtextarea.js"></script>
<script type="text/javascript">
var txt = new DTextarea('txt',40);
txt.show();
</script>
Le résultat est un textarea tout simple... si quelqu'un a une idée
.
Merci d'avance