Note that there are some explanatory texts on larger screens.

plurals
  1. POJQuery $.post Not working on the second click
    primarykey
    data
    text
    <p>Thanks for checking this out:</p> <p>What im doing is reading multiple values like name and class to determine the being clicked, then sending it as a paremeter to a PHP on my server so i can switch its class and name value. </p> <p>This works great and switches the class the first time I click it, but the second time I click on the element, it does not work anymore. Looking at chrome's console, i can see the POST result being successful, but the $.post callback function is not being run anymore. </p> <pre><code>$('a').click(function() { if($(this).attr("name")=="Config"){ return; } else if ($(this).attr("name")=="Return"){ return; } else if ($(this).attr("name")=="Temperatura"){ return; } else{ var parameters = {}; parameters.devicename = $(this).attr("name").split('_')[0]; parameters.devicevalue = $(this).attr("name").split('_')[1]; parameters.devicestate = parseInt($(this).html()); alert (parameters.devicestate); var selector; if ($(this).hasClass("Luz_On") || $(this).hasClass("Luz_Off")){ selector = "Luz"; $(this).attr('id','ajaxelement'); alert("entro"); alert($(this).attr('name')); alert(selector); alert($(this).attr('id')) } else if ($(this).hasClass("Cortina_Up") || $(this).hasClass("Cortina_Down")){ selector = "Cortina"; $(this).attr('id','ajaxelement'); } else if ($(this).hasClass("Temperatura")){ selector = "Temperatura"; $(this).attr('id','ajaxelement'); } else if ($(this).hasClass("Rewind")){ selector = "Rewind"; $(this).attr('id','ajaxelement'); } else if ($(this).hasClass("Play")){ selector = "Play"; $(this).attr('id','ajaxelement'); } else if ($(this).hasClass("Pause")){ selector = "Pause"; $(this).attr('id','ajaxelement'); } else if ($(this).hasClass("Forward")){ selector = "Forward"; $(this).attr('id','ajaxelement'); } $.post( "http://localhost/AplicacionWeb/test.php", parameters, function(data){ if (data.valid=='true') { switch(selector) { case "Luz": alert("case"); if ($('#ajaxelement').attr('name') == "Luz_On"){ alert("caseif1"); $('#ajaxelement').removeClass("Luz_On").addClass("Luz_Off"); $('#ajaxelement').attr('name','Luz_Off'); $('#ajaxelement').removeAttr('id'); } if ($('#ajaxelement').attr('name') == "Luz_Off"){ alert("caseif2"); $('#ajaxelement').removeClass("Luz_Off").addClass("Luz_On"); $('#ajaxelement').attr('name','Luz_On'); $('#ajaxelement').removeAttr('id'); } break; case "Cortina": break; case "Temperatura": break; case "Rewind": break; case "Play": break; case "Pause": break; case "Forward": break; default: alert("C'est la vie"); } }//data.valid }, "json" ); } }); // end click </code></pre>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload