Jump to content
AJBM

Código para AJAX por vezes funciona outras vezes não

Recommended Posts

AJBM

Boas!

Eu tenho que fazer uma funcionalidade em ajax que me envie os dados para um dada pagina,

window.onload = function() {
   document.getElementById('Addfav').onclick = classifica_Ajax;

};

function classifica_Ajax() {
   var id = document.getElementById('actorID');

   $.get('./database/teste.php', {actorID: id.value},
   function(valor) {
alert(document.getElementById('actorID').value);

   })
           .fail(function() {
       alert("Erro no Get!");
   });

}

O alerta é lançado mas nao envia os dados para a pagina

 <article  class="bordernomenu">
                                   <?php }
                                   ?>
       <!--<section> utilizar! -->
                                       <h3><?= $value->getActorNome(); ?></h3>
                                       <p><?=$value->getDescricao();?></p>
                                       <p><img class="meDcapa" src="<?= $value->getImagem(); ?>" alt="Capa"/></p>
                                       <input type="text" id="actorID" value="<?= $value->getActorID(); ?>"  readonly/>

                                       <button id="Addfav">Add Favoritos</button>
                                   </article>

Supostamente devia ir buscar os dados a esta pagina e envia los para a teste

Edited by brunoais
Tentativa de melhorar o título.

Share this post


Link to post
Share on other sites
NunoDinis

Hum... estranho. De qualquer forma, usa o debug do internet explorar para verificar se está com algum erro de javascript.


Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Share this post


Link to post
Share on other sites
AJBM

utilizei o do google e parece estar tudo bem, ja agora $.get('./database/teste.php', {actorID: id.value},

function(valor) o actorID--este nome indica o que ?

Share this post


Link to post
Share on other sites
NunoDinis

O actorID ? É o parâmetro que está associado ao valor que passas do objeto actorID.


Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Share this post


Link to post
Share on other sites
NunoDinis

Pode, desde que na página onde apresentas os resultados o chames.


Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Share this post


Link to post
Share on other sites
AJBM

ok.

já agora eu com este pedido ajax estou adicionar um determinado actor aos favoritos, o problema é que por exemplo tenho uma lista com 2 actores e quero adicionar o segundo aos favoritos nao funciona, só me deixa adicionar o primeiro.

Share this post


Link to post
Share on other sites
NunoDinis

O problema está em passar mais que um ID ou fazer a inserção ?


Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Share this post


Link to post
Share on other sites
AJBM

a inserção esta a funcionar, eu só passo um id

Eu tenho um article com actor1 tenho outro article com autor2, se eu clicar no button do actor2 ele nao faz nada(nem sequer executa o js).

se eu clicar no button do actor1 adiciona o actor1 aos favoritos, de seguida se clicar no button do actor2 ele já a funciona, mas o id que é passado corresponde ao actor1.

Share this post


Link to post
Share on other sites
NunoDinis

Isso indica que o actor2 não recebe nenhum ID. Onde vais buscar o ID do 2 ?


Estranha forma de vida que tem a capacidade de transformar comandos em mensagens de erro.

ndsotware.org

Share this post


Link to post
Share on other sites
AJBM

Mas o problema é que recebe, este input permite ver o id do actor, e o id esta correcto mas quando eu clico no button o id é outro

<input type="text" id="actor" name="actor" value="<?= $value->getActorID(); ?>" readonly/>--Da-me o id do actor
                                    <?php if (!$data->existeFavoritos($value->getActorID(),"ww")) { ?>
                                        <button id="Addfav">Add Favoritos</button>
                                    <?php
                                    } else {
                                        ?> <button id="Remfav" name="actor">Remove Favoritos</button> <?php
                                    }?>


Resolvi o problema do ids, associando o id do actor ao button, mas ainda continuo com o outro problema Edited by brunoais
2x post junto

Share this post


Link to post
Share on other sites
AJBM

resolvi o problema de outra maneira

window.onload = function() {

var q = document.querySelectorAll('article > button');

for(var i = 0; i < q.length; ++i){
	q[i].onclick = classifica_Ajax;
}

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.