Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal,
Tenho esse código para máscara de hora em campo Text
Javascript
<script>
function Mascara_Hora(Hora)
{
var hora01 = '';
hora01 = hora01 + Hora;
estado = "";
if (hora01.length == 2)
{
hora01 = hora01 + ':';
document.forms[0].Hora.value = hora01;
}
if (hora01.length == 5)
{
hr = document.forms[0].Hora.value.substring(0,2)
if((hr < 00) || (hr > 23))
{
estado = "errada";
}
mi = document.forms[0].Hora.value.substring(3,5)
if((mi < 00) || (mi > 59))
{
estado = "errada";
}
if (Hora.value == "")
{
estado = "errada";
}
if (estado == "errada")
{
alert("Hora inválida!");
document.forms[0].Hora.focus();
}
else
{
return Hora;
}
}
}
</script>
form
<input name="hora_dom" type="text" id="Hora" size="5" OnKeyUp="Mascara_Hora(this.value)"/>
<input name="hora_seg" type="text" id="Hora" size="5" OnKeyUp="Mascara_Hora(this.value)"/>
<input name="hora_ter" type="text" id="Hora" size="5" OnKeyUp="Mascara_Hora(this.value)"/>
<input name="hora_qua" type="text" id="Hora" size="5" OnKeyUp="Mascara_Hora(this.value)"/>
<input name="hora_qui" type="text" id="Hora" size="5" OnKeyUp="Mascara_Hora(this.value)"/>
<input name="hora_sex" type="text" id="Hora" size="5" OnKeyUp="Mascara_Hora(this.value)"/>
<input name="hora_sab" type="text" id="Hora" size="5" OnKeyUp="Mascara_Hora(this.value)"/>
Problema: quuando só tem um campo visível funciona, mas qnd entra no while que tem antes dos campos e todos aparecem, para de funcionar.
Alguém pode me ajudar?
Como assim?
E se eu não duplicar o Hora, como vou passar o valor pra função, se ela recebe uma variável?
pois é, por isso que você deve passar o objeto inteiro, assim:
<input name="hora_dom" type="text" size="5" onkeyup="Mascara_Hora( this )" />
<input name="hora_seg" type="text" size="5" onkeyup="Mascara_Hora( this )" />
e então, fazer as correções necessárias na função.
e denovo, apenas para reforçar: você não pode duplicar IDs.
Vou ajustar aqui.
Obrigada!
Pode deixar que não vou mais duplicar IDs. =)
Beijos
não duplique o ID.
ID deve ser um identificador unico.
essa função poderia ser melhor, se você enviasse o objeto this inteiro para dentro dela.