Problème avec fonction replace

Résolu
cs_brian85
Messages postés
18
Date d'inscription
vendredi 5 janvier 2007
Statut
Membre
Dernière intervention
26 juin 2008
- 26 juin 2008 à 12:52
Zobibol
Messages postés
469
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
20 février 2017
- 26 juin 2008 à 14:20
Bonjour,

j'ai un petit souci sur une fonction js à qui je demande de remplacer
dans un champ hidden une valeur d'id il la match mais il ne remplace
pas, sauriez vous pourquoi ?
Il affiche l'alerte, mais il ne remplace pas, serait ce dû au type de champ hidden sur lequel j'effectue la fonction qui empêcherait un replace ?

function delete_liste(mot,id,liste,valeurs){


  var reg_mot = new RegExp(mot);
  var reg_id = new RegExp(id);
  if document.getElementById<wbr>(valeurs).value.match(reg_id){
     document.getElementById<wbr>(valeurs).value.replace(reg_id<wbr>,"");
     alert document.getElementById<wbr>(valeurs).value;

  }
}</wbr></wbr></wbr></wbr>

6 réponses

Zobibol
Messages postés
469
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
20 février 2017
6
26 juin 2008 à 13:47
Salutations, amis du jour, déjà pour commencer le code fournis est truffé d'erreur :
alert sans parenthèse, if idem

Ensuite pourquoi faire le match, la méthode replace ne remplacera rien si l'expression n'est pas trouvée !

Donc, j'en suis arrivé à la conclusion suivante:

<html>
    <head>
        <title>
        </title>
        <script>
            function delete_liste(mot,id,liste,valeurs){
                  var reg_mot = new RegExp(mot);
                  var reg_id = new RegExp(id);
                  var _elem = document.getElementById(valeurs);
                  var hiddenValue = _elem.value;
             _elem.value =  hiddenValue.replace(reg_id,"");
             alert (_elem.value);
                }
               
            function changeId(){
                    delete_liste("", "1", "", "1");
            }
            </script>
    </head>
   
           
   
</html>

????
3
cs_bultez
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
26 juin 2008 à 13:16
Bonjour,
>>serait ce dû au type de champ hidden
non.
enfin... je dis non, mais comme on ne dispose que de peu de chose ( trop peu ! )
y' quoi dans mot ? id ? liste ? valeurs ?
comment les champs sont-ils décrits en html ?  ...

en général j'utilise tout simpement  :
var recepteur=emetteur.replace(/ce qu'il faut remplacer/gi,'remplacer par');

<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
généralement, c'est idiot de généraliser
0
cs_brian85
Messages postés
18
Date d'inscription
vendredi 5 janvier 2007
Statut
Membre
Dernière intervention
26 juin 2008

26 juin 2008 à 13:21
Salut merci de te pencher sur le pb, j'applique cette fonction sur un champ de type hidden qui dans mon exemple contient "1," et id contient "1" que je veux supprimer de la value tout simplement, les autres valaurs servent pour autres choses ce la ne joue pas sur l'exemple.
Ce qui est dingue c'est qu'il match mais qu'il ne remplace pas. j'ai fait un affichage de reg_id qui me retourne /1/
0
cs_bultez
Messages postés
13616
Date d'inscription
jeudi 13 février 2003
Statut
Membre
Dernière intervention
15 octobre 2013
32
26 juin 2008 à 13:43
>>dans mon exemple contient "1," et id contient "1" que je veux supprimer de la value tout simplement,
mais encore ?
peux-tu, simplement, donner le texte originel et ce que tu voudrais obtenir ?
et encore une fois, hidden n'intervient pas du tout. pour javascript c'est du string, rien d'autre
<hr />                Cordialement            Bul         [mon Site]     [M'écrire]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_brian85
Messages postés
18
Date d'inscription
vendredi 5 janvier 2007
Statut
Membre
Dernière intervention
26 juin 2008

26 juin 2008 à 14:17
Bonjour et merci,

oui effectivement j'ai recopié un peu vite mon exemple, en fait le problème venait tout simplement que je ne réaffectait pas la valeur remplacée :
document.getElemetById(x).value =  document.getElemetById(x).value.replace(reg_id,"");

Arf j'avoue g honte là
0
Zobibol
Messages postés
469
Date d'inscription
mercredi 9 janvier 2002
Statut
Membre
Dernière intervention
20 février 2017
6
26 juin 2008 à 14:20
De rien,
aucune honte à avoir, du moment que t'as compris ce qui ne fonctionnait pas, c'est beaucoup plus intéressant !

[O-_-o]
0