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 :

Problème avec des caractères spéciaux dans une chaine


Sujet :

JavaScript

  1. #1
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Problème avec des caractères spéciaux dans une chaine
    Bonjour,
    je souhaiterai trouvé une solution pour remplacer des accents dans une fonction javacript.

    J'ai un element qui conetient des caractéres accentués
    exemple: onclick="test('originalité');"

    le probleme est que Internet explorer me signale une erreur de type ')' attendu du fait je pense que le premier ; provoque une erreur.

    Dans ce cadre, existe t'il une solution pour eviter ce genre de probleme.

    Merci d'avance pour votre aide

  2. #2
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Points : 46
    Points
    46
    Par défaut
    Salut,
    j'ai fait un test avec ton exemple, et pas de problème. Cela marche très bien avec IE.
    Ci-dessous le code source que j'ai utilisé:
    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
     
    <html>
    <head>
    		<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    		<link rel="stylesheet" href="./css/index.css" type="text/css" media="screen" charset="utf-8" />
    		<title>Navigation</title>
    		<script>
    			function test(msg) {
    				alert(msg);
    			}
    		</script>
    	</head>
    	<body>
    		<div id='main' onclick="test('originalit&eacute;');"></div>
    	</body>
    </html>
    Peux tu donner le code source de ta fonction "test" ?

  3. #3
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Merci pour ta réponse
    Bonjour,
    tout d'abord merci pour ta réponse

    voici un exemple d mon code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    function post(id, auteur, categorie) {
    document.images['post'].src = post.php?id=' + id + '&auteur=' + auteur + '&categorie=' + categorie;
    }
    exemple pour faire appelle a la fonction
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    onclick="post(1, '&eacute;milie ducrou&eacute;', '&eacute;conomie et num&eacute;rique');"
    Voila la fonction est plus de ce type, néanmoins j'ai ais regardé d'autres pistes car dans certain cas la fonction marche, dans ce cadre je pense que la fonction est hors de cause.

    Merci et bon journée

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Points : 46
    Points
    46
    Par défaut
    j'ai fait un test avec tes nouveaux elements et pas d'erreurs.
    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
     
     
    <html>
    	<head>
    		<title>Navigation</title>
    		<script>
    			function post(id, auteur, categorie) {
    				var msg = 'post.php?id=' + id + '&auteur=' + auteur + '&categorie=' + categorie ;
    				alert(msg);
    			}
    		</script>
    	</head>
    	<body>
    		<div id='main' onclick="post(1, '&eacute;milie ducrou&eacute;', '&eacute;conomie et num&eacute;rique');"></div>
    	</body>
    </html>
    As tu essayé de passer par une variable intermédiaire.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    var url_src = 'post.php?id=' + id + '&auteur=' + auteur + '&categorie=' + categorie;
    document.images['post'].src =  url_src;
    Le cas que tu as donné est un cas qui marche ? peux-tu donner un cas qui marche et un cas qui ne marche pas ?

    Par contre, j'ai vu une petite erreur dans le code source que tu as donné (peut être correcte dans l'ensemble de ton code source) . Il manque une côte entre = et post.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    document.images['post'].src = 'post.php?id=' + id + '&auteur=' + auteur + '&categorie=' + categorie;

  5. #5
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Merci pour votre suivi
    Voila un exemple de mon code qui ne marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a href="#" onclick="post(1, 'Lecteur mp3', '4 Go (M&eacute;moire int&eacute;gr&eacute;), 43 g, Format audio: MP3, WAV, AAC, MP3 VBR, AIFF. Taille de l'&eacute;cran: 3,8 cm');">Test post</a>
    Il semble que c'est les () dans la fonction qui semble poser un probleme

    Qu'en pensez vous?

  6. #6
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut
    Je viens de me rendre compte en postant mon message que une ' au niveau de Taille de l'&eacute;cran était présente?
    puis-je englober les variables avec des "" plutot que des ''

    exemple post(1, "test1", "test2");

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Points : 46
    Points
    46
    Par défaut
    Effectivement le problème est bien dans la parenthèse. Il se situe entre "Taille de l" et "écran".
    Le caractère " ' " est réservé pour délimiter le passage des paramètres d'une fonction. Pour l'utiliser en tant que caractère et non en tant qu'instruction, il faut utiliser le \. Le \ annule sa fonction.

    Ainsi, il faut écrire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
     
    <a href="#" onclick="post(1, 'Lecteur mp3', '4 Go (M&eacute;moire int&eacute;gr&eacute;), 43 g, Format audio: MP3, WAV, AAC, MP3 VBR, AIFF. Taille de l\'&eacute;cran: 3,8 cm');">Test post</a>
    J'ai testé sans le \, j'ai bien la même erreur et avec le \ plus d'erreur.

    Voilà voilou....

  8. #8
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Points : 46
    Points
    46
    Par défaut
    Vu de l'erreur en même temps..........
    utilise le \

  9. #9
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut
    Merci beaucoup pour votre aide, par contre derniére petite question
    y'a t'il une possibilité pour ajouté directement le \ devant le ' car les données sont traitées à la volé.

  10. #10
    Membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations forums :
    Inscription : Février 2006
    Messages : 34
    Points : 46
    Points
    46
    Par défaut
    Une des possibilités que je vois, est d'utiliser l'objet RegExp() pour manipuler des chaînes de caractères.

  11. #11
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut Merci
    Je vais voir de ce coté là, en tout merci beaucoup pour votre aide.

    Bonne continuation

    Thibaut

  12. #12
    Membre du Club
    Inscrit en
    Avril 2005
    Messages
    105
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 105
    Points : 49
    Points
    49
    Par défaut C regler
    Merci pour ton aide,
    pour info la solution en xsl pour remplacer un caractere est la fonction translate()

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

Discussions similaires

  1. Réponses: 22
    Dernier message: 22/05/2013, 17h52
  2. Réponses: 10
    Dernier message: 22/05/2004, 13h51
  3. [langage] compter des caracteres dans une chaine
    Par louisis dans le forum Langage
    Réponses: 3
    Dernier message: 18/05/2004, 22h39
  4. Réponses: 2
    Dernier message: 12/01/2004, 13h56
  5. Réponses: 3
    Dernier message: 12/06/2002, 21h15

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