Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lkm

como aumentar um textarea automaticamente

Recommended Posts

como faço para o text área ir aumentando automaticamente conforme o uso - ele fica ssem barra de rolagem - tipo do phpmyadmin (versão mais atual)

Compartilhar este post


Link para o post
Compartilhar em outros sites

usando javascript, verifique o tamanho do conteudo do textarea e faça os cálculos para aumentar ou diminuir

 

 

exemplo:

 

<HTML>
<script language=JavaScript>

function ResizeTextArea(txtBox)
{
nCols = txtBox.cols;
sVal = txtBox.value;
nVal = sVal.length;
nRowCnt = 1;

for (i=0;i<nVal;i++)
{ if (sVal.charAt(i).charCodeAt(0) == 13) { nRowCnt +=1; } }

if (nRowCnt < (nVal / nCols)) { nRowCnt = 1 + (nVal / nCols); }
txtBox.rows = nRowCnt;
}

</script>

<BODY>
<form name=frmSubmit method=post >
<table border=0 cellspacing=1 cellpadding=1 width='70%' align=center>
<tr><td align=left><textarea name=txtTest cols=50 rows=1 style='overflow:hidden'> </textarea></td></tr>
<tr><td align=left><a href=# onclick="ResizeTextArea(document.frmSubmit.txtTest);" >Resize</a></td></tr>
</table></form></BODY></HTML>

fonte: http://www.eggheadcafe.com/PrintSearchContent.asp?LINKID=228

Compartilhar este post


Link para o post
Compartilhar em outros sites
Dei uma alterada para pegar automaticamente todos os textboxes do formulario e fazer o resizer.




function ResizeTextArea(){

for (var j=1; j < form.length-1; j++){

if (form[j].type=="textarea"){


txtBox = form[j];

nCols = txtBox.cols;

sVal = txtBox.value;

nVal = sVal.length;


nRowCnt = 1;


for (i=0;i<nVal;i++){

if ((sVal.charAt(i).charCodeAt(0) == 13) || (sVal.charAt(i).charCodeAt(0) == 10)){

nRowCnt = nRowCnt +1;

}

}


if (nRowCnt < (nVal / nCols)) {

nRowCnt = 2 + (nVal / nCols);

}

if (nVal == 0){

nRowCnt = 1;

}

txtBox.rows = nRowCnt;

}

}

}

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.