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

jQuery Discussion :

checkbox sous IE


Sujet :

jQuery

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut checkbox sous IE
    bonjour,

    voici mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
    <head>
    	<title>TEST</title>
    	<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
     
    	<script type="text/javascript" src="jquery-1.4.1.js"></script>
    	<script type="text/javascript" src="test.js"></script>
    </head>
     
    <body>
     
    <p>
    <input type="checkbox" id="W0" name="X0" checked="checked"/> Activer inputbox<br/>
    <input type="text" id="X0" value="toto"/>
    </p>
     
    </body>
    </html>

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    // code executé au demarrage
    $(document).ready(function(){	// Traitement effectué lorsque le DOM est prêt
     
     
    	$("input[type=checkbox]").change(function(){
    		if ($(this).is(":checked")){
    			disListBox($("#"+$(this).attr("name")), 0);
    		} else {
    			disListBox($("#"+$(this).attr("name")), 1);
    		}
    	});
     
    	$("input[type=checkbox]").triggerHandler("change");
    });   
     
    function disListBox(obj, val){
    	$(obj).attr("disabled", parseInt(val));
    }
    => le but de mon script, est d'activer/désactiver mon inputbox en fonction de la valeur de la checkbox.

    Pourquoi sous IE, lorsque je clic pour la premiere fois sur la checkbox, mon input box n'est pas désactivée (après ça fonctionne) ?

    merci d'avance,

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    20
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 20
    Par défaut Reponse
    Bonjour,
    J'ai testé ton code sous IE8 et ça fonctionne très bien.
    Je ne vois pas le souci.

  3. #3
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut
    Citation Envoyé par pcleder Voir le message
    Bonjour,
    J'ai testé ton code sous IE8 et ça fonctionne très bien.
    Je ne vois pas le souci.
    ... je ne comprends pas ça ne fonctionne pas chez moi
    => attention je parle lors du premier click :
    1- ouvrir la page
    2- cliquer sur la checkbox => normalement le texte de l'inputbox devrait se mettre en grisé alors que "chez moi" ça ne le fait pas (après si je continue a cliquer, ça se met a fonctionner )

  4. #4
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut Il me semble
    que j'avais eut un problème identique sous IE6 et que j'avais résolu cela en utilisant l'évènement click plutôt que l'évènement change.

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Septembre 2009
    Messages
    1 850
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 1 850
    Par défaut
    Citation Envoyé par Sourrisseau Voir le message
    que j'avais eut un problème identique sous IE6 et que j'avais résolu cela en utilisant l'évènement click plutôt que l'évènement change.
    c'est ce que j'ai fait mais c'est quand même bizarre que JQuery gère "change" à moitié : peut être qu'il faut faire une initialisation à quelque part ?

  6. #6
    Membre expérimenté
    Homme Profil pro
    Développeur Web
    Inscrit en
    Octobre 2006
    Messages
    205
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Octobre 2006
    Messages : 205
    Par défaut Oui
    et non ... car IE6 est vraiment très particulier ( enfin tu dois le savoir ... ) et dans certains cas il faut vraiment bidouiller pour qu'il réagisse 'comme on le souhaite'.

    Ce qui est sur c'est que le support de IE6 pour jquery est extrêmement contraignant et , que , malgré tout , il s'en sort plutôt bien.

Discussions similaires

  1. Réponses: 4
    Dernier message: 09/05/2007, 23h39
  2. Réponses: 2
    Dernier message: 16/02/2007, 15h56
  3. [VBA-W]Checkbox sous word
    Par Naim0r dans le forum VBA Word
    Réponses: 5
    Dernier message: 29/03/2006, 15h34
  4. Checkbox sous IE7
    Par Death83 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 20/03/2006, 23h52
  5. Utiliser la valeur d'une checkbox sous HTMLDB
    Par zent dans le forum Oracle
    Réponses: 5
    Dernier message: 03/11/2005, 17h23

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