2010-12-11 16 views
0

Je veux que mon champ de recherche dise "Où êtes-vous" le fasse disparaître quand il est cliqué et réapparaisse quand il clique dehors en le laissant vide.Comment faire pour que mon champ de recherche affiche du texte et le fasse disparaître quand on clique dessus

Ceci est le formulaire de recherche:

<div id="search-10" class="widget_search"> 
<form role="search" method="get" id="searchform" action="http://chusmix.com/?s=" onsubmit="window.location = action + s.value + '+: <?php the_search_query() ?>'; return false;"> 
<div> 
<input class="ubicacion" type="text" value="" name="s" id="s2" style="margin-left:0px;"> 
<input type="submit" id="searchsubmit" value="Buscar"> 
</div> 
</form></div> 

J'ai essayé cela, mais pour une raison quelconque, il ne fonctionne pas:

<li id="search-10" class="widget_search"> 
<form role="search" method="get" id="searchform" action="http://chusmix.com/"> 
    <div> 
    <input class="ubicacion" type="text" value="" name="s" id="s" style="margin-left:418px;"> 
    <input type="submit" id="searchsubmit" value="Buscar" onblur=" if(this.value== '') this.value='Where are you';" onfocus=" if(this.value=='Where are you') this.value=''; " value="Where are you" name="keyword" /> 
    </div> 
    </form></li> 

Répondre

0

Faux la frontière de l'entrée à l'aide d'une div, et la position de la entrée réelle et une étiquette à l'intérieur - l'un des meilleurs de l'autre.

Dissimule l'étiquette lorsque l'élément obtient le focus, remets-le lorsque le focus est perdu si la valeur est vide. Il existe un example using jQuery.

+0

Merci. J'essaye de le changer pour l'utiliser sur mon code mais j'ai quelques problèmes. – lisovaccaro

+0

Pour une raison quelconque, cela ne fonctionne pas lorsque je le mets sur ma page, pas même lorsque je le colle le coller sans rien changer. – lisovaccaro

+0

Si vous le copiez/collez sans rien changer, le chemin vers jQuery sera erroné. – Quentin

-1

Voir l'exemple ci-dessous javascript brut -

<input type="text" onblur=" if(this.value== '') this.value='Where are you';" onfocus=" if(this.value=='Where are you') this.value=''; " value="Where are you" name="keyword" /> 

A côté de cela, vous pouvez utiliser jquery, dojo, le plugin Mootools pour gérer cela.

+0

Veuillez ne pas abuser de la valeur en tant qu'étiquette. Ce n'est pas ce qu'il est, et ne sera jamais lisible pour les lecteurs d'écran (qui mettent l'accent sur les éléments avant de lire leur contenu). – Quentin

+0

Cela fonctionne. Merci beaucoup – lisovaccaro

+0

En fin de compte cela n'a pas fonctionné de toute façon, pour une raison quelconque, il cesse de fonctionner quand je le mélange avec ma barre de recherche. – lisovaccaro

0

Ceci supprime le texte par défaut lorsqu'un utilisateur clique sur le formulaire de recherche et le rajoute lorsque l'utilisateur clique sur le formulaire de recherche.

<form id="searchform" method="get" action="search.php"> 
<input class="textbox" value="Search" name="s" id="s" onfocus="if (this.value == 'Search') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Search';}" type="text"> 
<input type="submit" id="searchsubmit" value="" class="searchsubmit" /> 
</form>