Afficher, cacher div [Fermé]

Signaler
Messages postés
1003
Date d'inscription
mercredi 12 décembre 2007
Statut
Membre
Dernière intervention
3 juin 2021
-
Messages postés
33029
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2021
-
Bonjour à tous,

J'ai une petite complication avec le display none

Dans le site que je suis en train de construire, j'ai une zone de texte (recherche) dans laquelle lorsque je veux rechercher, je souhaiterais que le contenu de la plage en cours se cache pour laisser place au résultat de la recherche.
Seulement ça ne fonctionne pas comme je le souhaite.

<div class="evenement">
<script language="JavaScript">
function show_hide_div(nomdiv){
var lediv = document.getElementById(nomdiv);
if(lediv.style.display=="block")
lediv.style.display="none";
else
lediv.style.display="block";
}
</script>

<div class="search"><input type="text" name="recherche" class="text" id="recherche" placeholder="Rechercher" onchange="show_hide_div('cache_cache')"/></div>

<div class="resultat" id="resultat"></div>

<div id="cache_cache"><!-- Contenu ici --></div>


Vous pouvez m'aider svp ?

2 réponses

Hello ....
Essaye
if ()
{}
else {}

Je n'utilise (sûrement à tort) que jquery, et la syntaxe est différente.. mais j'y arrive... donc si tu veux la solution en js pur, je ne sais pas. En jQuery je peux t'aider. Comme ça t'arrange///////
Messages postés
33029
Date d'inscription
mercredi 22 octobre 2003
Statut
Modérateur
Dernière intervention
24 juin 2021
3 575
Bonjour

Déjà.. il n'y a pas de ONCHANGE sur un INPUT.

Ensuite... voici un code fonctionnel :
<div class="evenement">
<script language="JavaScript">
function show_hide_div(elmvalue,nomdiv){
	var lediv = document.getElementById(nomdiv);
	//si quelque chose est marqué dans l'input
	if(elmvalue.length>0){
	 lediv.style.display="block";
	}else{
	 lediv.style.display="none";
	}
}
</script>

<div class="search">
<input type="text" name="recherche" class="text" id="recherche" placeholder="Rechercher" onkeyup="show_hide_div(this.value,'cache_cache');"/></div>

<div class="resultat" id="resultat"></div>

<div id="cache_cache" style="display:none;"><!-- Contenu ici -->
ceci est un texte test....</div>