begin process at 2012 05 29 05:34:35
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Javascript / DHTML / Ajax

 > 

JavaScript Orienté objet (POO)

 > 

Function & Méthodes

 > 

Empecher la redondance de valeurs a l'affichahe.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Empecher la redondance de valeurs a l'affichahe.

mardi 1 février 2011 à 15:06:48 | Empecher la redondance de valeurs a l'affichahe.

CosmicAline

Hello

Je suis en train de me faire un petit utilitaire. Généralement tout fonctionne.
Par contre dans la liste des résultats j'ai plusieurs fois les mêmes valeurs qui reviennent, savez comment annuler cette affichage ?


Ci dessous le code:

<html>
<head>
<script type="Text/JavaScript">
function valider()
{
var valeur = document.choisir.animID;
var tmp="";
for (var i=0;i < valeur.length; i++)
{ if ( valeur[i].checked )
{ tmp+=""+valeur[i].value; }
}
document.getElementById('elmID').innerHTML=tmp;
}
</script>
</head>
<body>
<form id='choisir' name='choisir' method=get action="javascript:void(0);"onSubmit="valider(); return false;">
<input id="check1" name="animID" type="checkbox" value="cat=chien;scat=chien;"> Tous les chiens<br>
<input id="check1" name="animID" type="checkbox" value="cat=chien;scat=labrador;"> Labrador<br>
<input id="check2" name="animID" type="checkbox" value="cat=chien;scat=boxer;"> Boxer<br>
<input id="check3" name="animID" type="checkbox" value="cat=chat;scat=chat;"> Tous les chats<br>
<input id="check4" name="animID" type="checkbox" value="cat=chat;scat=siamois;"> Siamois<br>
<input type="submit" value=" Afficher " name="submit">
<input type="reset" value=" Annuler " name="reset">
</div>
</form>
Votre choix ci-dessous<br>
<div id="elmID"></div>
</body>
</html>




Comme résultat ca pourrait me donner ca:
cat=chien;scat=chien;cat=chien;scat=labrador;cat=chien;scat=boxer;
J'aurais besoin que cat=chien n'apparaisse qu'une fois.
J'ai pensé a changer les valeurs mais malheureusement si je coche que labrador j'ai cat=chien qui doit apparaitre...

Voilà j'ai un peu de mal là



++


mardi 1 février 2011 à 16:34:34 | Re : Empecher la redondance de valeurs a l'affichahe.

Zobibol

Membre Club
Réponse acceptée !
Bien le bonjour, j'ai bien une solution mais elle n'est pas des plus propres (à mon goût).

Code Javascript :
function valider()
{
var valeur = document.choisir.animID;
var tmp="";
for (var i=0;i < valeur.length; i++)
{ 
	if ( valeur[i].checked ){ 
		// découpage de la valeur obtenue:
		// première chose, on supprime le ; à la fin.
		var val =  valeur[i].value.substring(0, valeur[i].value.length-1);
		// Maintenant on peu splitter la chaine de résultat en fonction de ;, on obtient un enregistrement du type: ["cat=chien", "scat=chien"]...
		var splitValue = val.split(";"); 
		// Parcours la liste splittée
		for ( var j=0; j< splitValue.length; j++){
			// Si la chaine de résultat ne contient pas la valeur en cours de test, on l'ajoute.
			if ( tmp.indexOf (splitValue[j]) ==-1){
				// Ajoute à la suite de la chaine.
				tmp += splitValue[j]+";";
			}
		}
	}
}
document.getElementById('elmID').innerHTML=tmp;
}


Mais cela réponds à la question.
je pense qu'il doit y avoir plus simple, mais je n'ai hélas pas beaucoup d'idée aujourd'hui...

[o-_-o]
mardi 1 février 2011 à 18:28:47 | Re : Empecher la redondance de valeurs a l'affichahe.

CosmicAline

Quoi, plus simple ???
Mais c'est PARFAIT !

merci merci !!


:)
jeudi 28 avril 2011 à 12:40:20 | Re : Empecher la redondance de valeurs a l'affichahe.

CosmicAline

Salut :)

J'ai voulus ajouter une fonction mais je n'y parviens pas.
En fait je souhaiterais ajouter 3 checkbox.

Lorsque je coche une des checkbox celà remplace la "," par 'espace'and'espace'us=11,

A l'affichage ça donnerait:
Si rien n'est coché
cat=chien,scat=Boxer,scat=Labrador,

Si la première checkbox est cochée
cat=chien and us=11,scat=Boxer and us=11,scat=Labrador and us=11,

Si la deuxième checkbox est cochée
cat=chien and us=12,scat=Boxer and us=12,scat=Labrador and us=12,

Si la troisième checkbox est cochée
cat=chien and us=13,scat=Boxer and us=13,scat=Labrador and us=13,

Si les trois sont cochée
cat=chien and us=11 and us=12 and us=13,scat=Boxer and us=11 and us=12 and us=13,scat=Labrador and us=11 and us=12 and us=13,

Si vous avez une idée c'est bienvenue je sèche un peu là
jeudi 28 avril 2011 à 12:55:36 | Re : Empecher la redondance de valeurs a l'affichahe.

jopop

Salut,

J'écris directement la soluce sous forme de code pour aller plus vite :
Code Javascript :
// soit output la variable qui contient ta chaîne non traitée
var output = "cat=chien,scat=...";
// on détermine les modifications à apporter
var forreplace = "";
// soit chk1, chk2 et chk3 tes 3 CheckBoxes
if (chk1.checked) forreplace += " and us=11";
if (chk2.checked) forreplace += " and us=12";
if (chk3.checked) forreplace += " and us=13";
// s'il existe bien des modif à apporter on transforme alors la chaîne
if (forreplace != "") output = output.replace(/,/g, forreplace + ",");




Cette discussion est classée dans : var, valeurs, cat, chien, labrador


Répondre à ce message

Sujets en rapport avec ce message

problème de passage de valeurs dans fonction [ par tkoniez ] Bonjour,je n'arrive pas à passer des valeurs dans une fonction... PS : sans passage de valeurs la même fonction tourne sans problème (fonction : Trans problème avec le login [ par TheRif ] J'ai un petit problème avec le login,au début ca marchait comme sur des roulette, mais quand j'ai essayé de testé d'aller vers une page qui était bloq programmer le jeux Yahtzee sous javascript [ par bouz78 ] On se propose de programmer le célèbre jeux de Yahtzee en JavaScript . Il se joue avec cinq dés et le joueur a un maximum de trois essais pour chacun Celebre jeux yahtzee !!! [ par bouz78 ] On se propose de programmer le célèbre jeux de Yahtzee en JavaScript . Il se joue avec cinq dés et le joueur a un maximum de trois essais pour chacun Probléme d'affichage d'une image redimensionnée [ par atract ] Bonjour!J'ais sur le site que je suis en train de developper une fonction javascript sevant à redimensionner des images : function redimImage(inImg, i Boulce et tableau= problème [ par BirD ] Salut la foule, Je suis en train de me casser la tete depuis 4 heures sur un ptit truc, mais j'en ai bien besoin, alors vous pourrez surement m'aider. boucle et tableau, gros problème [ par BirD ] Salut la foule, Je suis en train de me casser la tete depuis 4 heures sur un ptit truc, mais j'en ai bien besoin, alors vous pourrez surement m'aider. portée des variables dans fonction [ par BirD ] salut tout le monde,j'ai un gros problème de variables. Je m'explique, j'ai une fonction (appellée au chargement) qui contien une boucle for. Cette bo texte visible et sélectionné dans textarea [ par bultez ] bonjour à tous.func lien aléatoire parmi une liste prédéfinie? [ par sambre ] bonjour,je souhaite affecter à un lien une valeur aléatoire parmi une liste de plusieurs sites prédéfinis.J'ai essayé de réaliser cela à partir de plu


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,203 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales