8768 sujets

Développement web côté serveur, CMS

Bonjour,

J'ai effectué une requête AJAX permettant d'actualiser un chiffre lors du clic, cependant j'aimerais également modifier le src d'une image dans mon html dans la même fonction.

Sauriez-vous comment je puis-je faire cela ?

var xhr = new XMLHttpRequest();

var voteNumber = document.getElementById("voteNumberContentTopic");

var linkVoteUp = document.getElementById("linkVoteUp");

function voteTopic(topicID, status, userID) {

    /* var buttonVoteUp = document.getElementById("linkVoteUp"); */

    xhr.onreadystatechange = function () {

        if (xhr.readyState == 4 && xhr.status == 200) {

            voteNumber.innerHTML = xhr.response;

        }
    };

    xhr.open("POST", 'ajax-folder-topic/voteTopic.php', true);

    xhr.responseType = "text";

    xhr.setRequestHeader("Content-type", "application/x-www-form-urlencoded");

    xhr.send("id=" + topicID + "&status=" + status + "&userID=" + userID);

}
Hello,

pour passer plusieurs arguments depuis ton PHP tu peux utiliser ce genre de méthode:

$tavariable['valeur1'] = (string) 'un';
$tavariable['valeur2'] = (string) 'deux';
$tavariable['valeur3'] = (string) 'trois';
// etc
echo json_encode($tavariable);


Ensuite tu les récupère en JS dans ton ajax:

const dataElements= JSON.parse(this.responseText);
// et tu as donc
// dataElements.valeur1 => "un"
// dataElements.valeur2 => "deux"
// dataElements.valeur3 => "trois"

Modifié par stryk (11 Jan 2021 - 20:06)
Meilleure solution
Je t'en prie ^
ça fonctionne comme tu veux au moins ?
Je t'avoue que je n'ai pas testé ( à vue de nez je dirais que c'est bon )