Ir para conteúdo

POWERED BY:

Arquivado

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

Marcos Barbosa

[Resolvido] Enviar dados para outra página co jquey

Recommended Posts

Pessoal, quero enviar uma informação para outra página usando o jquery, mas ñ estou conseguindo, não dá erro, simplismente não vai, estou usando o jquery.

segue:

<script type="text/javascript">
$("#cores").live("change", function(){
  var id = $("#cores").val();
  $.ajax({
type : 'POST',
url: 'painel.php?exe=loja/lista_produtos',
cache: false,
data: 'id_cor='+$("#cores").val(),
dataType: 'html',
success: function(txt){
	$('body').html(txt);
}
  })
})

<select name="cores" id="cores" class="lojaselect">
<?php
    $seleciona = $conecta->executa_query("SELECT * FROM lj_cores ORDER BY nome");
     while ($rs = mysql_fetch_array($seleciona)){
          echo("<option id='id_cores' value='".$rs['id_cor']."'>".$rs['nome']."</option>");
     }
?>
</select>

</script>

 

Alguém pode me ajudar ?

 

Pessoal, já está resolvido, tinha colocado o caminho errado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

O seu método .ajax está corretíssimo. O grande problema é: se der algum erro no processamento do php, você não vai conseguir ver. E porque?

Simples, você esqueceu de usar o evento ERROR. Faça o seguinte, adicione o seguinte evento, após o evento SUCCESS usado em seu .ajax():

 

error: function(a,b,c){
      alert("Erro na operação:" + a + "\n" + b + "\n" + c);
}

 

Assim você consegue visualizar o que pode der dado errado. Outra coisa bacana é fazer um debug manual. Como seu dataType é HTML, você pode dar um alert no parametro que vem no evento success! assim você saberá exatamente o que o servidor está respondendo ;)

 

OUTRO PONTO interessante é, evite de usar métodos do jquery fora do escopo definido pelo próprio jquery, que seria definido pelo jquery após a página (e com isso todos os elementos) serem carregados por completo... Por exemplo, você nem precisaria usar o .live() mas tenho certeza que se usasse diretamente o .change() daria um bug!

 

Sabe porque? Porque você está carregando o script antes do elemento existir. O .live() corrige este problema, mas o seu uso não é destinado à isso. Faça o seguinte com teu código (válido para qualquer um dos teus códigos jQuery):

 

<script type="text/javascript">
    $(function(){
         //seu código jQuery aqui!
    });

</script>

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.