Quelqu'un d'assez fort en javascript sait il faire ???

Signaler
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009
-
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
-
Bonjour tout le monde, voila je débute en javascript, et je dois développer une fonction pour mon entreprise, qui doit gérer les caractères spéciaux. Je m'explique:
J'ai créer une page HTML sur laquelle je rentre le nom d'un fournisseur, et c'est la que ma fonction JS rentre en jeu. Dans ce champ ou je rentre le nom de mon fournisseur il y a parfois des caractères spéciaux. La je dois créer une fonction qui vérifierait si dans le nom, il y a des caractères spéciaux, et si il y en a il faut que la fonction remplace c'est caractères spéciaux par le code associé. Voila j'espère avoir été assez clair et j'espère avoir une réponse. Merci d'avance

38 réponses

Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
bonjour,

oui, certes... mais que n'arrives-tu pas à faire ?

si on doit tout te faire, surtout pour une entreprise,
    je te dirais causons :    

    ou alors regarde ici :    

http://emploi.codes-sources.com/

Cordialement

          [mon Site] [M'écrire]  Bul         
pas très fort en javascript, je saurais faire
regarde les expressions régulières
des précisions ( code associé ? ) et ton code sont nécessaires
Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
4
Salut,

C'est quoi pour toi un caractère spécial ?
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

daccord donc parlons peut mais parlons bien, pour répondre tout dabord a fregolo52, un caractère spécial c'est ça:
&, ë, ï, ö,å,N,¤,§,¥,¦,...
Et pour Bul3, ne t'inquiète pas je suis pas prêt a lacher des sous comme ça, je connais un minimun tout de même, c'est à dire:

function remplace
var caractere:  &, ë, ï, ö,å,N,¤,§,¥,¦,...
var code: &incare,&frac56,&block,...
je pense que par la suite je dois faire un do while, avec vérification de ce qui est inscrit comme nom, vérif caractère par caractère, et remplacement par le code si il y a des caractères spéciaux. Le problème est que je vois pas trop comment le mettre en place je ne demande pas la solution toute faites, mais quelques indications pour savoir quel code peut m'aider à faire la chose souhaiter.
Merci pour vos réponses.
<col style=\"width: 60pt;\" width=\"80\" />
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
ben.. t'as tout !???!
replace ( et le do while ou n'importe qulle boucle est inutile ! )....   
je te disais "expression régulières" !!!!
une doc ? selfHTML c'est ici par exemple

          [mon Site] [M'écrire] Bul         
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
>>je suis pas prêt a lacher des sous comme ça
euh... je parlais de ton entreprise !  pas de toi personnellement !!!!
          [mon Site] [M'écrire] Bul         
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Oui Ok merci, je connaissais la fonction replace, mais cela si je me souvient bien ne marche que pour une occurence. Comment faire pour que le replace fonctionne pour tout les caractères?
Messages postés
1107
Date d'inscription
mercredi 15 juin 2011
Statut
Membre
Dernière intervention
10 juillet 2018
4
En cherchant un peu, tu trouveras une fonction toute faite.
J'en ai jamais eu besoin mais je l'ai déjà vu quelque part. Et il y a plein d'exemple de conversion de caractères accentués en code html.
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Oui Ok d'accord avec toi il y en as surement, mais ça fait depuis hier que je cherche et que je ne trouve pas. J'ai réaliser un petit truc mais je vois pas trop comment le finir si quelqu'un peut m'éclaircir pour la suite.

Fonction remplace(Nom)
var caractere: ...
var code : ...
for (i=0, i<caractere.length, i++)
{
/* et c'est la que je vois pas comment faire*/
}
return (nom)
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
>>si je me souvient bien ne marche que pour une occurence.
non non ( donc pas l'impératrice )
>>Comment faire pour que le replace fonctionne pour tous les caractères ?
regarde la doc, dans les expressions régulières on peut mettre /xxx/g
( par exemple, car avec regExp, c'est pareil ) qui fait que l'ordre
s'applique à tout le champs
          [mon Site] [M'écrire] Bul         
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Ok Bul3, si je comprend bien ca donnerait:
fonction remplace(Nom)
var caractere:&,ï,...
var code: caractere.replace(/&,ï/,"&amp,&5655")/*je marque des trucs faux car je n'est pas la table des caractères sous les yeux*/
document.write(code)

It's good ???
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
Iznogoud
n'essaye pas d'inventer la syntaxe, ça ne fonctionnera pas
lis la doc
déjà j'avais mis /xxx/g      pour faire sur le champ complet
          [mon Site] [M'écrire]  Bul         
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Bon sans vouloir être désagréable, soit plus explicite STP.Comme je l'ai dit au début, je débute en JS, et la je vois pâs ce que tu me demande de faire. Ok j'ai été voir sur le lien que tu ma donner mais je vois toujours pas ce que je dois faire. Il explique pas grand chose et moi ca me prend le choux.
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
>>je débute en JS
ce n'est pas une excuse...
et il est probablement temps de t'y mettre, d'apprendre....

que veux tu que je te dises sinon répéter :
n'essaye pas d'inventer la syntaxe, ça ne fonctionnera pas
lis la doc
déjà j'avais mis /xxx/g      pour faire sur le champ complet

et aussi :

si on doit tout te faire, surtout pour une entreprise,

    je te dirais causons :    

    ou alors regarde ici :     http://emploi.codes-sources.com/

          [mon Site] [M'écrire] Bul         
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Merci Bum3 pour ton aide mais la ou mon problème ce pose c'est quand tu dis:
/xxx/

Je veux bien, mais les xxx je les remplace par quoi?
Par tout mes caractères, ou seulement par le nom de ma variable associé?

Et je viens de comprendre ce que veut dire le 'g', c'est global, ça tu aurais pu me l'expliquer, mais en rajoutant 'i', je crois que cela pourrait être encore mieux non?
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
mais enfin... que dit la doc selfHTML ?  

replace()

Parcourt une chaîne de caractères à l'aide d'une expression régulière.

Remplace les chaînes de caractères concordant avec l'expression régulière.

Attend les paramètres suivants:

1. . expression régulière = une expression régulière qui peut renvoyer une occurrence.

2. . remplacer par = une chaîne de caractères par laquelle les occurrences doivent être remplacées.

Exemple:

<html><head><title>Test</title></head>

<script type="text/javascript">

<!--

 var avant = "Francine Dubois";

 var maintenant = avant.replace(/Dubois/,"Durand, née Dubois");

 document.write(maintenant);

//-->

</script></html>

Explication: Le script de l'exemple affecte un nom à une variable nommée avant.

Un processus de recherche/remplacement est appliqué sur le nom sauvegardé avec replace().

Le premier paramètre transmis à replace() est l'expression régulière.

Celle-ci trouve la chaîne de caractères "Dubois".

Une occurrence a pour effet le remplacement de cette chaîne de caractères

par "Durand, née Dubois".

Le résultat est écrit pour le contrôle dans le fichier.

Vous trouverez plus de détails et d'exemples pour cette méthode à l'objet RegExp

prend le temps de lire,
consulte RegExp et les explications sur les "expressions régulières" si nécessaire.

          [mon Site] [M'écrire] Bul         
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
quand à ta question : >>mais les xxx je les remplace par quoi?
tu nous disais : >>ces caractères spéciaux par le code associé

et nous fûmes 2 à te demander c'est quoi les caractères spéciaux ?  c'est quoi le code associé ?
je commence à entrevoir le but ( quoique ? )
peut-on te demander pourquoi tu veux faire ça ? ça servira[it] à quoi ?

          [mon Site] [M'écrire] Bul         
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Ok je suis crevé et il fait chaud dans le bureau, mon cerveau doit avoir des raté, mais je crois qu'il n'y a pas que le miens. Regarde sur mon deuxième message de ce sujet j'ai expliquer ce qu'était les caractères spéciaux.
Pour l'utilisation, je veux créer une fonction toute simple qui vérifie le nom entrer dans le champ "Nom", et qui remplace les caractères spéciaux par leur code associé html, pour ne pas avoir des "?" partout.
C'est tout, après si tu veux savoir l'utilsation que l'on veut en faire, c'est pas dur on est une entreprise de ventes par correspondance, et on a un intranet avec le nom des fournisseur, leur coordonées, ...
Sachant que la vente est mondial, dans certains pays les nom utilisé son parfois avec des caractères spéciaux.
Messages postés
4933
Date d'inscription
samedi 1 juillet 2006
Statut
Membre
Dernière intervention
2 février 2015
11
euh... si en plus tu m'envoie paître,   je ne vais finir par ne plus te répondre ! 
je trouve déjà que je suis particulièrement patient avec toi !

>>&, ë, ï, ö,å,N,?,§,¥,?,...
j'avais pas lu/vu ! 
par coorection t'aurais pu redire !

et.... ce que tu veux faire est totalement inutile !
si ces caractères s'affichent mal,  c'est que tu n'utilises pas
le bon  "meta" en html ( ou header en php ou ??? )
       <meta   http-equiv="content-type"
                  content="text/html; charset=ISO-8859-1">
      par exemple... ou utf-8 si ta page est en utf-8...

          [mon Site] [M'écrire] Bul         
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Ouai excuse mon impolitesse Bul3, je suis crevé je m'énerve vite, bref pour tout te dire, on ma demander pour l'instant de le faire sur une page html, mais par la suite je crois que l'on va l'utiliser en interne sur un programme de sauvegarde et donc j'aurais besoin de cette fonction.Je quitte le boulot et je m'en vais a amsterdam dans 2heures donc je reviens lundi et je vais y réfléchir en attendant.
Merci pour tout bon week-end.
Messages postés
30
Date d'inscription
jeudi 18 décembre 2008
Statut
Membre
Dernière intervention
2 novembre 2009

Ok, donc si je comprend l'histoire des expressions régulière, je dois donc dévelloper un truc comme:
Code : Autre
1
2
3, function remplace
var reg: /&,ï,î,â,ä,.../gi;
var code: reg.replace("&amp;","&558;",...);


ou bien
Code : Autre
1
2
3, function remplace
var reg:/\w/;
var code:reg.replace("\\w");


Mais je m'était déjà renseigner sur les expréssion régulière et si je me souvient bien cela ne marche que pour un seul attribut.

Merci pour la rep.