Ir para conteúdo

POWERED BY:

Arquivado

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

Yuri Fontella

Desabilitar o botão de enviar?!

Recommended Posts

Tenho esse código que, quando os campos estão vazios o botão fica desabilitado... mas quando eu digito algo nos campos o botão não fica habilitado... o que devo colocar no "else"...pois ele não está removendo a classe =/

 

          $(document).ready(function(){
	  var titulo = $("#titulo").val();
	  var depoimento = $("#depoimento").val();
	    if(titulo || depoimento == ""){
		  $("#insert").addClass('disabled');
		} else {
		  $("#insert").removeClass('disabled');
		}
	  })

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não... mas o if tá certo "$("#insert").addClass('disabled');" ele add a classe se não tem nada digitado... o problema é o else, quando eu digito algo é para remover a classe e habilitar o botão.



Ah entendi... tu mudou a forma. Mas mesmo assim não funcionou. O botão continua desabilitado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, na verdade ele só está fazendo essa função quando ele inicia a página, você precisa adicionar um evento no seu input.

 

Tente:

 

 

$(document).ready(function(){


var titulo = $("#titulo").val();
 var depoimento = $("#depoimento").val();


$("#input").change(function()
{


   if(titulo || depoimento == ""){
 $("#insert").addClass('disabled');
} else {
 $("#insert").removeClass('disabled');
}


});
})

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

É... nada funciona. Acabei fazendo em scripts diferentes... O se os campos estiverem vazios, e outra usando o change. Até funcionou, só que quando apago os dados... ele não volta a ficar desabilitado. O else nunca funciona.

        //Vazio

        <script type="text/javascript">
	  $(document).ready(function(){
	  var titulo = $("#titulo").val();
	  var depoimento = $("#depoimento").val();
	    if(titulo == "" || depoimento == ""){
		  $("#insert").addClass('disabled');
		}
	  })
	</script>
 
        //Change
	
	<script type="text/javascript">
	$(document).ready(function(){
	  var titulo = $("#titulo").val();
	  var depoimento = $("#depoimento").val();
	  $("#titulo, #depoimento").change(function(){
	    $("#insert").removeClass('disabled');  
	  })
	  if(titulo == "" || depoimento == ""){
		  $("#insert").addClass('disabled');
		}
	})
	</script>

Compartilhar este post


Link para o post
Compartilhar em outros sites

no lugar do evento change, use keypress

Compartilhar este post


Link para o post
Compartilhar em outros sites

posta o seu script completo, com html.

 

ai eu rodo aqui e vejo oq está ocorrendo. Não entendi a sua dificuldade.

Compartilhar este post


Link para o post
Compartilhar em outros sites

A ideia é o seguinte: Tem dois campos e um botão de enviar... se os campos estão vazios o botão fica desativado, se preenche-los o botão fica ativo, usando a class 'disabled' no botão("#insert")... Ele começa desativado e quando preencho ele habilita, mas, se eu apago os dados ele não volta a ficar desabilitado... código:


$(document).ready(function(){
var titulo = $("#titulo").val();
var depoimento = $("#depoimento").val();
if(titulo == "" || depoimento == ""){
$("#insert").addClass('disabled');
}
})
$(document).ready(function(){
$("#titulo, #depoimento").keypress(function(){
$("#insert").removeClass('disabled');
})
})


Esse é o código....



Agora fiz desse jeito... já deixei a classe no botão e fiz esse script:

     <script type="text/javascript">
	$(function(){
	$("#titulo, #depoimento").keypress(function(){
	  $("#insert").removeClass('disabled');
	  })
	  return false
	})
    </script>

Só que eu preciso que se os campos forem apagados a classe disabled seja adicionada.... Quando apago os dados o botão não fica desabilitado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse if:

  if(titulo == "" || depoimento == ""){
tem q estar também dentro do keypress

Compartilhar este post


Link para o post
Compartilhar em outros sites

É... não adianta, fiz de várias formas... Até funciona, inicia desabilitado, se digita algo ele habilita... Só que quando apaga os dados, ele não addClass('disabled') novamente. Único problema. Mas pela lógica era pra funcionar. Mas obrigado pela ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloquei... fiz desse jeito agora e nada.

if(titulo.length < 0){
  $(".insert").addClass('disabled');
}


Mazáá até que em fim!! Valeu gurizada... segue o código :D

        $(document).ready(function(){
	$("#titulo").on('keyup', function(){
	var titulo = $("#titulo").val();
	  $(".insert").removeClass('disabled');
	  if(titulo.length < 1){
            $(".insert").addClass('disabled');
           } else {
	       return true
	     }
	  })
          return false
	})

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não pode ser <0, tem que ser =0.

 

Você nunca vai ter -1 letras no campo.

 

Para incluir a função para dois campos basta adicionar uma "," no jQuery:

 

 

$(document).ready(function(){
$("#titulo, #campo2").on('keyup', function(){


var titulo = $("#titulo").val();
var campo2 = $("#campo2").val();


 $(".insert").removeClass('disabled');
 if(titulo.length <= 0 || campo2.length <= 0){
            $(".insert").addClass('disabled');
           } else {
      return true
    }
 })
          return false
})

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Na verdade ficou assim... e deu certo ;)

       $(document).ready(function(){
	$("#titulo").on('keyup', function(){
	var titulo = $("#titulo").val();
	  $(".insert").removeClass('disabled');
	  if(titulo == ""){
        $(".insert").addClass('disabled');
       }
	  })
	})


Valeu KhaosDoctor, funcionou colocando a "," agora ficou tri :D



Agora sim, resolvido... Obrigado.

        $(document).ready(function(){
	$("#titulo, #depoimento").on('keyup', function(){
	var titulo = $("#titulo").val();
	var depoimento = $("#depoimento").val();
	  $(".insert").removeClass('disabled');
	  if(titulo == "" || depoimento ==""){
        $(".insert").addClass('disabled');
       }
	  })
	})

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.