Jump to content


KiTTo

Member Since 03/09/2005
Offline Last Active 11/08/2009, 16:31
-----

Topics I've Started

Bloqueio De Textarea Após X Caracteres

10/07/2009, 15:38

Olá pessoal!!!

Cara, faz muuuuito tempo que não apareço por aqui graças ao meu infeliz distanciamento do 'web development' =/

Mas então, estou trabalhando numa agencia de viagens e acabei por ficar responsável pela manutenção do site e estou implementando um serviço de envio de SMS pelo nosso site.

Acontece que esse serviço (entre outras restrições e características chatas) tem um limite de 147 caracteres, no entando, este limite inclui o número de destino do sms (12 caracteres: 55xx88888888) o nome da pessoa (variavel, mas com limite de 15) e a mensagem (variavel da mesma forma). Como o número do telefone de destino é fixo, contemos que a mensagem tem que ter até 135 caracteres.

Primeiro desafio: Conseguir somar a quantidade de caracteres dos dois campos do formulário. Depois de pesquisar, quebrar a cabeça e morrer tentando, cheguei ao seguinte script:
<html><head>	<title>Teste</title>		<script language="JavaScript">        function soma() {            totalChar = ((form.nome.value.length*1) + (form.texto.value.length*1));            maximo = "135";            if (totalChar <= maximo) {                form.total.value = maximo - totalChar;            } else {                alert("Pare por aí!");            }	        }        </script></head><body>    <form name="form">        <input name="nome" size="20" onKeyDown="soma()" onKeyUp="soma()"><br>         <textarea name="texto" rows="4" cols="35" onKeyDown="soma()" onKeyUp="soma()"></textarea><br>        Voce ainda pode digitar: <input name="total" value="135" size="1" readonly> caracteres.<br>       </form></body></html>

Até aí tudo perfeito, porque consegui o que eu queria. Porém, entretanto, todavia, contudo, vem o meu...
Segundo desafio: Fazer com que JS trave ambos os campos ao verificar que a variavel totalChar for igual a variavel maximo. É aí que vocês, anjos e gurus do desenvolvimento web entram :D. Preciso que esse controle seja feito, se não da erro no serviço de envio de sms e mesmo dando erro, o valor do envio é cobrado ¬¬

Alguém pode me ajudar?
Conto com vocês!

Obrigado!

IPB Skin By Virteq