Ir para conteúdo

POWERED BY:

Arquivado

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

Morpheus#2005

Calculo simples Hora Extra

Recommended Posts

Ola pessoallllll espero que todos estejam bem

 

Quem puder...me da um help...

 

 

Quero usar o jquery para calcular hora final - hora inicial = hora extra

 

Segue o JS que eu peguei na NET

 


pad = function (val, len, str) {
     val = String(val);
     len = len || 2;
     str = str|| "0";
     while (val.length < len) val = str + val;
     return val;
};

$(document).ready(function() {
 $('#hora').blur(function() {
     var hora = $(this).val();
     console.log('Hora Inicial: ' + hora);

     var acrescenta = parseInt($('#acrescenta').val()); //minutos
     console.log('Minutos à acrescentar: ' + acrescenta);

     var regexp = "(?:([01]?[0-9]|2[0-3]):)?([0-5][0-9])"; //Expressão de hora
     var date = hora.match(new RegExp(regexp)); //Executa a expressão
     console.log(date); //Qual resultado mermo?

     date = new Date(0, 0, 0, date[1], date[2], 0, 0); //Cria a data baseado na expressão
     date.setMinutes(date.getMinutes() + acrescenta); //Aumentamos o tempo

     console.log(date); //Verificamos o date

     $('#hora2').val(pad(date.getHours()) + ':' + pad(date.getMinutes()));
 });
});

 

Abracos a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ola pessoallllll espero que todos estejam bem

 

Quem puder...me da um help...

 

 

Quero usar o jquery para calcular hora final - hora inicial = hora extra

 

Galera...consegui andar...mas ainda esta dando um probleminha...so faz o calculo para um text.

 

<!DOCTYPE html>
<html>
<head>
<script class="jsbin" src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>
<script>
$(document).ready(function(){

$(".teste").blur(function(){

    txtHoraInicial = document.getElementById("txtHoraInicial");
	txtHoraFinal = document.getElementById("txtHoraFinal");

	SegundosInicial = (txtHoraInicial.value.substr(0,2) * 3600);
	SegundosInicial += (txtHoraInicial.value.substr(3,2) * 60);

	SegundosFinal = (txtHoraFinal.value.substr(0,2) * 3600);
	SegundosFinal += (txtHoraFinal.value.substr(3,2) * 60);

	HorasTotal = parseInt((SegundosFinal - SegundosInicial)/3600);
	MinutosTotal = parseInt(((SegundosFinal - SegundosInicial)%3600)/60);

	document.getElementById("txtHoraTotal").value = HorasTotal + ":" + MinutosTotal;

	if ((HorasTotal == 8) && (MinutosTotal > 0) || (HorasTotal >= 8)){
		document.getElementById("txtHoraExtra").value = HorasTotal - 8 + ":" + MinutosTotal;
	}else{
		document.getElementById("txtHoraExtra").value = "00:00";
	}

});

	});

</script>
<meta charset=utf-8 />
<title>JS Bin</title>
</head>
<body>
       Inicial: <input type="text" maxlength="5" id="txtHoraInicial"  /><br />
       Final: <input type="text" maxlength="5" id="txtHoraFinal" class="teste"  /><br />
       Total: <input type="text" maxlength="5" id="txtHoraTotal"  /><br />
       Extra: <input type="text" maxlength="5" id="txtHoraExtra"  /><br>


       Inicial: <input type="text" maxlength="5" id="txtHoraInicial" /><br />
       Final: <input type="text" maxlength="5" id="txtHoraFinal" class="teste"  /><br />
       Total: <input type="text" maxlength="5" id="txtHoraTotal"  /><br />
       Extra: <input type="text" maxlength="5" id="txtHoraExtra"  />
</body>
</html>

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.