IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Recharger une page


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut Recharger une page
    Bonjour,

    Ma question a dû être abordée maintes fois, veuillez m'en excuser.

    Si j'ouvre ma page avec n'importe lequel des deux codes ci-dessous, le résultat est le même : La première case est cochée.
    Par contre, si je coche la deuxième case et que je recharge la page (exemple : appui sur le bouton F5 du clavier) :
    - Avec le premier code la deuxième case reste cochée.
    - Avec le deuxième code, la première case redevient cochée.

    Pourquoi?

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <!DOCTYPE HTML>
    <html>
      <head>
        <meta charset="utf-8">
      </head>
      <body>
        <input type="radio" name="o" checked>Choix 1<br>
        <input type="radio" name="o">Choix 2<br>
        <input type="radio" name="o">Choix 3<br>
      </body>
    </html>

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <!DOCTYPE HTML>
    <html>
      <head>
        <meta charset="utf-8">
      </head>
      <body>
        <input type="radio" name="o">Choix 1<br>
        <input type="radio" name="o">Choix 2<br>
        <input type="radio" name="o">Choix 3<br>
        <script>document.getElementsByTagName("input")[0].checked=true;</script>
      </body>
    </html>

  2. #2
    Expert confirmé
    Avatar de Watilin
    Homme Profil pro
    En recherche d'emploi
    Inscrit en
    Juin 2010
    Messages
    3 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : En recherche d'emploi

    Informations forums :
    Inscription : Juin 2010
    Messages : 3 099
    Par défaut
    Le navigateur garde en mémoire « l’état » d’une page à court terme, tant que son onglet reste ouvert. Mon hypothèse est que c’est lié au concept de session de navigation comme décrit dans la doc de sessionStorage (mais c’est à vérifier).

    L’état inital des champs de formulaire, défini par les attributs checked, value, etc. ne vaut que pour le premier chargement de la page. Lorsque tu recharges la page (ou restaures l’onglet, par exemple avec Ctrl+maj+T), le navigateur repositionne les champs à l’état qu’ils avaient avant le rechargement. Ça se produit au moment où la représentation DOM de l’élément est construite, donc avant l’évènement DOMContentLoaded.

    Dans ton exemple 2, le script se trouve à la fin du <body>, il est donc appelé après la construction des champs de formulaire. Donc, le cochage de l’input 0 se fait après que le navigateur ait restauré l’ancien état des champs.
    La FAQ JavaScript – Les cours JavaScript
    Touche F12 = la console → l’outil indispensable pour développer en JavaScript !

  3. #3
    Membre chevronné
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    Bonsoir,

    Je pensais ma question plutôt simple... En fait non. Comprendre comment fonctionne un navigateur n'est pas si évident.

    Un appui sur la touche F5 du clavier ou un clic sur l'icône "recharger la page" recharge la page, mais en tenant compte de données enregistrées temporairement dans le navigateur. La page est donc partiellement rechargée. On la recharge complètement en associant les touches ctrl et F5 du clavier.

Discussions similaires

  1. [JS] Recharger une page quand elle est réaffichée !
    Par beowax dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 19/02/2007, 16h01
  2. Comment recharger une page en CGI (perl)
    Par guiillaume63 dans le forum Web
    Réponses: 6
    Dernier message: 12/08/2006, 13h43
  3. recharger une page
    Par illegalsene dans le forum Général JavaScript
    Réponses: 6
    Dernier message: 06/01/2006, 11h09
  4. Comment recharger une page comme si on fausiat un refresh
    Par pierrot10 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 22/12/2005, 22h15
  5. [C#] Recharger une page sur le clic d'une ListBox
    Par pc152 dans le forum ASP.NET
    Réponses: 4
    Dernier message: 14/02/2005, 12h48

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo