input time apagar o value quando o checkbox for desmarcado

22/07/2021

0

Bom tarde a todos. Eu tenho o seguinte código em HTML
<input type="checkbox" id="checkmarcacao1" name="checkmarcacao1" value="checkmarcacao1">
<input type="time" id="hora101" name="hora101" disabled="disabled">



E tenho também o seguinte código em Javascript
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script>
  $(document).ready(function () {
	$(''input[name=checkmarcacao1]'').change(function() {
  	if ($(this).is('':checked'')) {
    	$(''input[name=hora101]'').removeAttr(''disabled'');
		} else {
    	$(''input[name=hora101]'').attr(''disabled'',true);
		}
	});
});
</script>


Esse meu código em Javascript faz o seguinte: Quando meu Checkbox está marcado, ele habilita o input time. Se eu desmarcar o checkbox, o input time é desabilitado.

Acontece que se eu marcar o checkbox, escrever no input time, por exemplo: 12:34, depois desmarcar o checkbox o input time fica desabilitado porém o valor 12:34 ainda fica escrito nele.

Eu gostaria de saber como apagar o valor do input time quando o checkbox estiver desmarcado. 



Quem quiser testar o código segue o link: https://jsfiddle.net/o8f3zvqu/
Carlos Massam

Carlos Massam

Responder

Posts

29/07/2021

Victor Carriço

Bom tarde a todos. Eu tenho o seguinte código em HTML
<input type="checkbox" id="checkmarcacao1" name="checkmarcacao1" value="checkmarcacao1">
<input type="time" id="hora101" name="hora101" disabled="disabled">



E tenho também o seguinte código em Javascript
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script>
  $(document).ready(function () {
	$(''input[name=checkmarcacao1]'').change(function() {
  	if ($(this).is('':checked'')) {
    	$(''input[name=hora101]'').removeAttr(''disabled'');
		} else {
    	$(''input[name=hora101]'').attr(''disabled'',true);
		}
	});
});
</script>


Esse meu código em Javascript faz o seguinte: Quando meu Checkbox está marcado, ele habilita o input time. Se eu desmarcar o checkbox, o input time é desabilitado.

Acontece que se eu marcar o checkbox, escrever no input time, por exemplo: 12:34, depois desmarcar o checkbox o input time fica desabilitado porém o valor 12:34 ainda fica escrito nele.

Eu gostaria de saber como apagar o valor do input time quando o checkbox estiver desmarcado. 



Quem quiser testar o código segue o link: https://jsfiddle.net/o8f3zvqu/


Cara, não sei muito sobre javascript mas tenta atribuir um valor pro input = ' ' ou '00:00'. Tipo assim:

if ($(this).is('':checked'')) {
$(''input[name=hora101]'').removeAttr(''disabled'');
} else {
$(''input[name=hora101]'').attr(''disabled'',true);
$(''input[name=hora101]'').value = ' ';
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar