Ir para conteúdo

POWERED BY:

Arquivado

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

Fells

[Resolvido] Validar Data com JavaScript

Recommended Posts

Bom dia a todos.

 

Gente, vou postar uma function que verifica todos os campos do formulário que tenho e se o usuário deixou de preencher algum campo do mesmo, assim que ele (usuário) clica no botão INSERIR surge uma msg na tela que informa qual campo esta sem dados.

 

O problema é que essa function só verifica se o campo está ou não vazio. PRECISO que ela tbm verifique se o campo DATA, além de preenchido esteja com uma DATA VÁLIDA.

 

 

Segue código: //Essa function verifica se os campos estao vazios e manda uma msg na tela com o campo que esta vazio quando o usuario clica em inserir.

 

<script LANGUAGE="JavaScript">

 <!-- Begin
 function checkrequired(which) {
 var pass=true;
 if (document.images) {
 for (i=0;i<which.length;i++) {
 var tempobj=which.elements[i];
 if (tempobj.name.substring(0,8)=="required") {
 if (((tempobj.type=="text"||tempobj.type=="textarea")&&
 tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&
 tempobj.selectedIndex==0)) {
 pass=false;
 break;
          }
       }
    }
 }

 if (!pass) {
 shortFieldName=tempobj.name.substring(8,30).toUpperCase();
 alert("O campo "+shortFieldName+" deve ser preenchido.");
 return false;
 }
 else
 return true;
 }
 //  End -->

 </script>

// Ai vou ter a tabela com os campos:

<table cellspacing="0" width="91%">
           <tr>
             <td class="Dadosnomecoluna" align="left" width="25%"><font size = 2 color = "#666666">Cliente</td>
             <td class="Dadosnomecoluna" align="left" width="30%"><font size = 2 color = "#666666">Distribuição</td>
             <td class="Dadosnomecoluna" align="left" width="25%"><font size = 2 color = "#666666">Emitente</td>
           </tr>
           <tr>
	<td align="center">
             		<input maxlength=50 class="texto" style="text-align: center" type="text" name="requiredCliente"></td>
	<td align="center">
             		<input maxlength=60 class="texto" style="text-align: center" type="text" name="requiredDistribuicao"></td>
	<td align="center">
             		<input maxlength=50 class="texto" style="text-align: center" type="text" name="requiredEmitente"></td>
	<td align="center">
    </tr>
</table>

<table cellspacing="0" width="73%">
           <tr>
             <td class="Dadosnomecoluna" align="left" width="15%"><font size = 2 color = "#666666">Data
		<font color = "red" size = 1>*(dd/mm/aaaa)</td>
             <td class="Dadosnomecoluna" align="left" width="55%"><font size = 2 color = "#666666">Assunto</td>
           </tr>
           <tr>
	<td align="center">
             		<input maxlength=10 class="texto" style="text-align: center" type="datatime" name="requiredData"></td>
	<td align="center">
             		<input maxlength=100 class="texto" style="text-align: center" type="text" name="requiredAssunto"></td>
           </tr>
  </table>

 

//Apos isso vem o botão INSERIR que encaminha os dados (se os campos estiverem preenchidos) para uma outra página ASP.

//Entao, lembrando... alem de verificar se ha campos vazios a function tem que verificar se a data digitada pelo usuario é uma DATA valida.

 

Valeu gente.

Compartilhar este post


Link para o post
Compartilhar em outros sites

[RESOLVIDO] Validar Data com JavaScript

 

Fala aew gente.. Ted K... de boas?

 

Eu fiz a maior trambicagem aqui e deu certo. To postando!

Abraços.

 

Felipe (Fells)

 

<!-- -----------------------------------------------------------------------------------
Script para fazer a verificação dos campos não preenchidos pelo usuário
dar um aviso na tela de qual campo está sem dados. Permite a correção do campo
sem apagar os dados ja inseridos nos outros campos.
------------------------------------------------------------------------------------- -->

 <script LANGUAGE="JavaScript">

 <!-- Begin
 function checkrequired(which) {
 var pass=true;
 if (document.images) {
 for (i=0;i<which.length;i++) {
 var tempobj=which.elements[i];
 if (tempobj.name.substring(0,8)=="required") {
 if (((tempobj.type=="text"||tempobj.type=="textarea")&&
 tempobj.value=='')||(tempobj.type.toString().charAt(0)=="s"&&
 tempobj.selectedIndex==0)) {
 pass=false;
 break;
          }
       }
    }
 }

 if (!pass) {
 shortFieldName=tempobj.name.substring(8,30).toUpperCase();
 alert("O campo "+shortFieldName+" deve ser preenchido.");
 return false;
 }
 else
 return true;
 }
 //  End -->

//----------------------------------------------------------------------------------------
//	Script para fazer a verificação e validação da Data.
//	Ao digitar algo no campo DATA em qualquer momento o script verifica se a Data
//	  é válida ou não. Caso não for informa que a data que o usuário inseriu
//	  não é válida, apaga a data e deixa o campo em branco.
//----------------------------------------------------------------------------------------

function validaDat(campo,valor) {
var date=valor;
var ardt=new Array;
var ExpReg=new RegExp("(0[1-9]|[12][0-9]|3[01])/(0[1-9]|1[012])/[12][0-9]{3}");
ardt=date.split("/");
erro=false;
if ( date.search(ExpReg)==-1){
	erro = true;
	}
else if (((ardt[1]==4)||(ardt[1]==6)||(ardt[1]==9)||(ardt[1]==11))&&(ardt[0]>30))
	erro = true;
else if ( ardt[1]==2) {
	if ((ardt[0]>28)&&((ardt[2]%4)!=0))
		erro = true;
	if ((ardt[0]>29)&&((ardt[2]%4)==0))
		erro = true;
}
if (erro) {
	alert("\"" + valor + "\" não é uma data válida!!!");
	// comentado campo.focus();
	campo.value = "";
	return false;
}
return true;
}

</script>

if request.queryString("at")= "" then

<!-- -------------------------------------------------------------------------------------------------------------------------------------
Abaixo do IF acima veio meu cabeçalho e outras coisas, criei minhas instruções e tabelas e na parte do input Data                
       deve-se inserir [b]onblur="validaDat(this,this.value)"[/b]
--------------------------------------------------------------------------------------------------------------------------------------- -->

<table cellspacing="0" width="73%">

           <tr>
             <td align="left" width="15%"><font size = 2 color = "#666666">Data
		<font color = "red" size = 1>*(dd/mm/aaaa)</td>
             <td align="left" width="55%"><font size = 2 color = "#666666">Assunto</td>
           </tr>

<!-- -------------------------------------------------------------------------------------------------------------------------------------
-	Aqui esta sendo criado os campos a serem preenchidosm pelo usuário com os dados para cadastro.					 -
--------------------------------------------------------------------------------------------------------------------------------------- -->

           <tr>
	<td align="center">
             		<input maxlength=10 class="texto" style="text-align: center" type="datatime" name="requiredData" onblur="validaDat(this,this.value)"></td>
	<td align="center">
             		<input maxlength=100 class="texto" style="text-align: center" type="text" name="requiredAssunto"></td>
           </tr>
  </table>

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.