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 :

Code qui ne fonctionne pas sur Mac


Sujet :

JavaScript

  1. #1
    Membre confirmé
    Avatar de malbaladejo
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2002
    Messages : 379
    Points : 527
    Points
    527
    Par défaut Code qui ne fonctionne pas sur Mac
    Bonjour à tous,

    J'ai un code qui fonctionne sur IE6 er FireFox mais qui ne fonctionne pas sur mac.

    Voic le problème.
    J'ai une fenétre principale qui ouvre un popup avec le code suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    window.name = 'inscription';
    function affiche_produits()
    {
    window.open('produit_add_pop.asp','produit_add','');
    }
    Dans mon popup j'ai le formulaire suivant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    <form name="frm_produit" method="post" action="inscription.asp" target="inscription">
    ...
    </form>
    En validant le formulaire les informations sont donc envoyé à la fenêtre principale puis je ferme le popup:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    function valide_form()
    {
    document.frm_produit.submit();
    window.close();
    }
    Comme je le dis ce code fonctionne sous IE et Firefox.
    Savez-vous pourquoi il ne fonctionne pas sur Mac ?

    J'ai l'impression qu'il ne reconnais pas le champ Target du formulaire.

  2. #2
    Membre actif Avatar de David.V
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    191
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Mars 2004
    Messages : 191
    Points : 203
    Points
    203
    Par défaut
    Et il n'y a aucune erreur de script, rien ?

  3. #3
    Membre actif
    Profil pro
    Ingénieur développement
    Inscrit en
    Juillet 2004
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement

    Informations forums :
    Inscription : Juillet 2004
    Messages : 323
    Points : 291
    Points
    291
    Par défaut
    Déjà, il faut savoir que si le site fonctionne sur Firefox sur Windows, il y a de très grandes chances qu'il fonctionne aussi sur Mac avec Firefox également.

    Par contre, peut-être qu'avec Safari, ça marche moins bien.

    Dans ton cas, tu devrais ajouter un attribut id dans ta balise form et utiliser cet id pour utiliser ton objet en javascript. La fonction est getElementByID(). En général, ça ne pose plus de problème quand on utilise les id.

    En xhtml, tu remarqueras que l'attribut name de la balise form et de la plupart des balise en général a été enlevé et remplacé par id.

    L'attribut name ne sert plus en javascript, il ne sert qu'à récupérer une valeur d'un élément de formulaire en php ou asp.

    Donc id='machin' getElementByID('machin')
    Хајде Јано коло да играмо

  4. #4
    Membre actif
    Profil pro
    Ingénieur développement
    Inscrit en
    Juillet 2004
    Messages
    323
    Détails du profil
    Informations personnelles :
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Ingénieur développement

    Informations forums :
    Inscription : Juillet 2004
    Messages : 323
    Points : 291
    Points
    291
    Par défaut
    Déjà, il faut savoir que si le site fonctionne sur Firefox sur Windows, il y a de très grandes chances qu'il fonctionne aussi sur Mac avec Firefox également.

    Par contre, peut-être qu'avec Safari, ça marche moins bien.

    Dans ton cas, tu devrais ajouter un attribut id dans ta balise form et utiliser cet id pour utiliser ton objet en javascript. La fonction est getElementByID(). En général, ça ne pose plus de problème quand on utilise les id.

    En xhtml, tu remarqueras que l'attribut name de la balise form et de la plupart des balise en général a été enlevé et remplacé par id.

    L'attribut name ne sert plus en javascript, il ne sert qu'à récupérer une valeur d'un élément de formulaire en php ou asp.

    Donc id='machin' getElementByID('machin')
    Хајде Јано коло да играмо

  5. #5
    Membre confirmé
    Avatar de malbaladejo
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2002
    Messages : 379
    Points : 527
    Points
    527
    Par défaut
    Merci pour vos réponses mais je viens de troiuver la solution.
    Sous Mac lorsque la target du formulaire du popup pointe sur la fenêtre principale, le fait de valider le formulaire du popup ferme le automatiquement le popup.
    Si on fait un window.close juste après le submit(), le popup se ferme sans valider le formulaire.

    La solution est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    function valide_form()
    {
    document.frm_produit.submit();
    if ( navigator.userAgent.indexOf('Mac') == -1 )
       window.close();
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 13
    Dernier message: 05/11/2013, 00h20
  2. Script JSP qui ne fonctionne pas sur n'importe quel poste
    Par vannary dans le forum Servlets/JSP
    Réponses: 15
    Dernier message: 18/12/2006, 11h56
  3. [Language] Code qui ne fonctionne pas
    Par kevinf dans le forum Langage
    Réponses: 2
    Dernier message: 21/11/2006, 21h08
  4. Code qui ne fonctionne pas
    Par maxti dans le forum Général JavaScript
    Réponses: 9
    Dernier message: 22/10/2006, 11h45
  5. Requete qui ne fonctionne pas sur toutes les versions de MySQL
    Par goldorax113 dans le forum Requêtes
    Réponses: 2
    Dernier message: 06/06/2006, 11h04

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