Ir para conteúdo
Fórum Script Brasil
  • 0

Ver Quantos Caracter Faltam


mestre fyoda

Pergunta

<html>
<head>

<style type="text/css">

@import "css/estilo.css";

</style>
<script src="js/ajax.js"> </script>

<script>

function Contar(Campo){
    var valor = 200-Campo.value.length;
    document.getElementById("quantidade").innerText = "Faltam " + valor + " caracters";
        if((200-Campo.value.length)==0)
            alert('Atenção, você atingiu o limite máximo de caracteres!');
}

</script>
</head>
<body>

<form action="gravar_msg.php" method="POST" name="form" id="form">

    <ul>
       <li class="texto"> <div id="cadastra"></div> </li>
       <li class="texto"> <br /><br /> <div align="center">Para : <input type="text" name="para" id="para" class="caixa" /> </div></li>
       <li class="texto"> <br /><br /> <div align="center">Mensagem : </div><div align="center"><textarea name="msg" rows="6" cols="50" class="caixa" onKeyUp="Contar(this);" maxlenght="200" ></textarea> </div> </li>
       <li class="texto"> <br /><br /> <div id="quantidade"> 200 </div> </li>
       <li class="texto"> <br /><br /> <div align="center"> Mostrar para todos: <input type="checkbox" name="visivel" id="visivel" checked /> </div></li>
       <li class="texto"> <br /><br /> <div align="center"> <input type="button" value="Enviar" onclick="ajaxForm('cadastra','form');"> </div></li>
    </ul>

</form>

</body>
</html>

Esse codigo tem um problema, quando o usuario segura alguma tecla e passa o valor total não para, como eu faço ?

Link para o comentário
Compartilhar em outros sites

6 respostass a esta questão

Posts Recomendados

  • 0
<script>
function getObject(obj) { 
  var theObj; 
  if(document.all) { 
  if(typeof obj=="string") { 
          return document.all(obj); 
  } else { 
          return obj.style; 
  } 
  } 
  if(document.getElementById) { 
  if(typeof obj=="string") { 
          return document.getElementById(obj); 
  } else { 
          return obj.style; 
  } 
  } 
  return null; 
} 
//Contador de caracteres. 
function Contar(entrada,saida,texto,caracteres) { 
  
          var entradaObj=getObject(entrada); 
          var salidaObj=getObject(saida); 
          var longitud=caracteres - entradaObj.value.length; 
  
if(longitud <= 0) { 
          longitud=0; 
          texto='<span class="disable">'+texto+'</span>'; 
          entradaObj.value=entradaObj.value.substr(0,caracteres); 
  } 
          salidaObj.innerHTML = texto.replace("{CHAR}",longitud); 
  } 
</script>

<textarea name="msg" rows="6" cols="50" class="caixa" onKeyUp="Contar('msg','quantidade','{CHAR} caracteres restantes.',200);">  ></textarea>

Editado por mestre fyoda
Link para o comentário
Compartilhar em outros sites

  • 0
<HTML>
<HEAD>
<TITLE>Demo cortesia www.phpdemos.com.br</TITLE>
<script language="Javascript">
function counterUpdate(opt_countedTextBox, opt_countBody, opt_maxSize) {
var countedTextBox = opt_countedTextBox ? opt_countedTextBox : "counttxt";
var countBody = opt_countBody ? opt_countBody : "countBody";
var maxSize = opt_maxSize ? opt_maxSize : 1024;

var field = document.getElementById(countedTextBox);

if (field && field.value.length >= maxSize) {
field.value = field.value.substring(0, maxSize);
}
var txtField = document.getElementById(countBody);
if (txtField) {
txtField.innerHTML = field.value.length;
}
}
</script>

</HEAD>

<BODY>
<p>Demo cortesia: <a href="www.phpdemos.com.br" target="_blank">www.phpdemos.com.br</a> </p>
<p>
<textarea id="counttxt" name="counttxt" rows="10" onKeyUp="counterUpdate('counttxt', 'countBody','30');"></textarea>

<br>
Voc&ecirc; digitou <B><span id="countBody">0</span></b> caracteres - Limite: 30 Chars </p>
<p>Autor: <a href=" http://www.websewak.com/" target="_blank"> http://www.websewak.com/</a> </p>
</BODY>
</HTML>

Link para o comentário
Compartilhar em outros sites

  • 0

ESerra corrija ai seu codigo, pois achei um bug :) se eu passar dos 30 caracters segundo uma tecla e depois eu clicar bo botao ele perde o foco e fica com o campo textarea com mais de 30 caracters, alem da onkeyup, também coloque um onblur.

<textarea id="counttxt" name="counttxt" rows="10" onKeyUp="counterUpdate('counttxt', 'countBody','30');" onblur=""counterUpdate('counttxt', 'countBody','30');""></textarea>

Link para o comentário
Compartilhar em outros sites

  • 0

eu sei, quando eu digitei seu codigo, eu naome expressei muito bem, eu quiz dizer o codigo que você postou :).

Para esses tipos de testes eu sou bom :).

Os dois codigos estão com erros no firefox :

Erro: field has no properties

txtField.innerHTML = field.value.length;

Editado por mestre fyoda
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152k
    • Posts
      651,7k
×
×
  • Criar Novo...