J'essaye de faire apparaître un certain texte en cliquant sur un élément lorsque le bouton a un certain texte. cependant le même texte de la première instruction if continue d'apparaître.

C'est le bouton:

<button class="game-button">Start spel</button>

Voici les éléments du tableau:

<div id="speelveld">
            <table border="0">
                <tr>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                </tr>
                <tr>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                </tr>
                <tr>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                    <td><img alt="" title="" src="img/empty.jpg" /></td>
                </tr>
            </table>
        </div>

Et voici le code javascript:

$(".game-button").click(function(){
    $(".game-button").html("Reset spel");
});

if ($(".game-button").val() == "Start spel") {
    $("#speelveld tr td").click(function() {
       alert("Je kunt nog niet beginnen");
    });
} else {
    $("#speelveld tr td").click(function() {
       alert("hoi");
    });
}

Ma question est: comment puis-je faire apparaître une certaine alerte lorsque le bouton contient un certain texte

0
T.Steur 14 janv. 2017 à 16:53

2 réponses

Meilleure réponse

Vous définissez le gestionnaire sur td en fonction d'une condition qui n'est jamais remplie.

Modifiez votre gestionnaire pour vérifier la valeur du bouton à chaque fois que vous cliquez sur une cellule du tableau.

$(".game-button").click(function(){
    $(".game-button").text("Reset spel");
});

$("#speelveld tr td").click(function() {
    if ($(".game-button").text() === "Start spel") {    
       alert("Je kunt nog niet beginnen");
    }
    else {
        alert("hoi");
    }
});
1
james_bond 14 janv. 2017 à 14:20

Vous liez l'événement à l'intérieur du if. Ainsi, seul l'événement à l'intérieur de if est enregistré

Voici ce que vous devez faire:

    $("#speelveld tr td").click(function() {
       if ($(".game-button").html() == "Start spel") {
         alert("Je kunt nog niet beginnen");
       } else {            
         alert("hoi");            
       }

    });
0
Sandeep Nayak 14 janv. 2017 à 14:00