2011-11-17 3 views
0

J'ai un champ de recherche qui a une valeur par défaut "Recherche", j'ai besoin d'écrire un javascript qui vérifie si la valeur dans la boîte de recherche est "Rechercher" ou vide, puis je ne devrais pas envoyé la demande et je dois afficher « S'il vous plaît entrer un mot-clé » `Validation du champ de texte pour les problèmes de recherche

Voici le code

<div id="search"> 
    <form action="/" style="" method="post" name="searchForm" id="searchForm" onSubmit="grabSearch();"> 
    <img src="/images/bg_search_left.jpg" id="search_box_left" width="5" height="32" alt="" /> 
    <input id="search_box" type="text" value="Search" onblur="if (this.value == '') {this.value = 'Search';}" onfocus="if (this.value == 'Search') {this.value = '';}"/> 
    <input type="image" id="search_arrow" src="/images/bg_search_right.jpg" width="34" height="32" /> 
    <input type="hidden" name="_page" value="SEARCH" /> 
    <input type="hidden" name="_action" value="SEARCH" /> 
    <input type="hidden" name="searchTerm" value="" /> 
    </form> 
    </div> 



    function grabSearch(){ 

    var search=document.getElementById('search_box').value; 
    if(search="Search"||search=""){ 
     document.getElementById('search_box').value="Please Enter a keyword" 
    } 
    search=encodeSearch(search); 
    document.forms['searchForm'].searchTerm.value = search; 
} 

le formulaire Présentez je vérifie et l'affichage du message « S'il vous plaît Entrez un mot-clé » . Bien que le message soit affiché dans le champ de texte mais que la demande soit envoyée (ce que je ne veux pas faire) et aussi sur le champ de texte je veux que le message (entrez un mot-clé) le fasse aussi

Répondre

1

En plus de Jeaffrey's answer, vous n'utilisez pas les opérateurs de comparaison corrects. Il devrait être:

if(search === "Search" || search === ""){ 
    document.getElementById('search_box').value="Please Enter a keyword"; 
    return false; 
} 

Après ce changement, vous devez retourner cette valeur de votre onSubmit -

<form action="www.google.com" style="" method="post" name="searchForm" id="searchForm" onsubmit="return grabSearch();"> 
+0

Le formulaire est en cours de soumission, mais s'il vous plaît entrer un mot-clé est affiché si – pushya

+0

@pushya - voir la mise à jour de la réponse. – rosscj2533

+0

@ rosscj2533- cela a fonctionné. Je vous remercie – pushya

0

Avez-vous essayé de retourner faux?

if(search == "Search" || search == ""){ 
    document.getElementById('search_box').value="Please Enter a keyword"; 
    return false; 
} 
+0

Non, il est encore la forme soumet et je reviens la réponse que je n » t want – pushya

Questions connexes