[Javascript] Poursuivre l'exécution d'un code

Résolu
pking64 Messages postés 18 Statut Membre -  
pking64 Messages postés 18 Statut Membre -
Bonjour,

J'ai un petit problème et j'aimerais savoir s'il y a une façon de le régler:

Dans mon script, j'utilise le getElementById et il arrive des fois que la division à laquelle je fais référence n'existe pas dans la page et c'est voulu. Le problème, c'est que quand le script arrive à cette ligne et s'aperçoit que la division que je lui demande de traiter n'existe pas, il interrompt tout et le reste du code n'est pas lu et ça occasionne des problèmes. Donc, ma question est: est-ce qu'il existe une façon de continuer à exécuter le script même si une erreur est survenue?

Merci!
A voir également:

4 réponses

Utilisateur anonyme
 
Si j'ai bien compris ça devrait répondre à ta question :
Récupère ton objet, teste-le, et s'il existe fait ce que tu veux.

Par exemple :
var bouton = document.getElementById("monBouton");
if(bouton) document.getElementById("maDiv").removeChild(bouton);

Si le bouton d'id monBouton existe, il est supprimé de maDiv, et s'il n'existe pas, ça continue normalement.
0
pking64 Messages postés 18 Statut Membre 2
 
Ce n'est pas tout à fait ça, voici un exemple:

<?php
$chiffre = 8;
if($chiffre<5){
     <div id='boite'>123</div>
}
?>

<script language="JavaScript">
      document.getElementById("boite").style.backgroundColor = 'red';
</script>


Comme tu vois, quand le code Javascript arrive au getElementById, il ne voit pas la division "boite", donc le code arrête. Ma question était: est-ce qu'il y a une façon que le code continue son exécution même s'il a rencontré une erreur?
0
Utilisateur anonyme
 
Soit j'ai rien compris à ton problème, soit tu as mal compris ma réponse.

<script language="JavaScript">
      var boite = document.getElementById("boite");
      if(boite) {
            boite.style.backgroundColor = 'red';
      }
</script>


Si la div boite n'existe pas ça n'essayera pas de lui mettre red dans backgroundColor.
Ça ne résout pas ton problème ?
0
pking64 Messages postés 18 Statut Membre 2
 
Ça fonctionne, j'avais mal compris ta réponse, je n'avais pas trop compris ton removeChild.

Merci, problème résolu!
0