Probleme "submit" et touche Entrer clavier

Résolu
Theophile76 Messages postés 2115 Statut Membre -  
Theophile76 Messages postés 2115 Statut Membre -
Bonjour,
j'ai créé une barre de recherche dans mon site de ce type :
<INPUT autocomplete="off" name="valeurdemacase" type="text" size="70" height="50" style="height:25px; font:18px arial,sans-serif bold">

Avec un bouton de recherche associé :
<input style="background-color:#EAEAEA; height:30px; cursor:pointer" type="button" value="Recherche Google" onclick="window.location='liens1/search/='+valeurdemacase.value">

Le problème est qu'en mode type="button", le fait d'appuyer sur entrer ne lance pas la recherche, il faut appuyer manuellement sur le bouton ...
J'ai donc remplacé par un type="submit" et là rien ne fonctionne (ni la touche Entrer du clavier, ni le clique manuel)
Pouvez vous m'aider svp, merci.


--
On s'ennuie pas avec l'informatique :)

3 réponses

  1. Templier Nocturne Messages postés 9989 Statut Membre 1 107
     
    type="bouton" onsubmit=[...] ;)
    1
    1. Theophile76 Messages postés 2115 Statut Membre 388
       
      Salut, merci, j'ai essayé
      type="bouton" onsubmit="window.location='liens1/search/='+valeurdemacase.value"

      C'est bien ça que tu me dis de faire ?
      car ça ne donne rien.
      0
    2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      Le onsubmit est plutôt à utiliser sur la balise form, et il faut mettre "return false" à la fin pour annuler l'action.

      <form method="post" action="cible.php" onsubmit="document.location.href = 'lien1/search/'+valeurdemacase.value; return false;">
      Ton bouton doit être de type "submit".
      0
    3. Theophile76 Messages postés 2115 Statut Membre 388
       
      Je comprend pas, je dois faire comment, et c'est quoi action="cible.php" ?
      0
    4. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      « action="cible.php" » : Tu peux mettre une page PHP qui se chargerait de faire la redirection au cas où le JS serait désactivé. Un site doit toujours fonctionner sans Javascript, ne l'oublie pas :)
      0
    5. Theophile76 Messages postés 2115 Statut Membre 388
       
      Mais il n'y a pas de code JS là non ?
      0
  2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
     
    Salut.

    Voilà un exemple :
    <form method="get" action="">
    	<div>
    		<label for="q">Recherche :</label>
    		<input type="text" name="q" id="q" onkeypress="if(event.keyCode == 13) { document.location.href = 'search/'+document.forms[0].elements['q'].value; return false; }" />
    		<input type="button" value="Rechercher" onclick="document.location.href = 'search/'+document.forms[0].elements['q'].value;" />
    	</div>
    </form>
    0
    1. Templier Nocturne Messages postés 9989 Statut Membre 1 107
       
      tu te complique pas un peu la vie là ? O_o
      0
    2. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      Oui, je pense :)
      À ta solution, il manque un "return false" à la fin.
      0
    3. Templier Nocturne Messages postés 9989 Statut Membre 1 107
       
      possible, j'y connais rien en JavaScript XP
      0
    4. Theophile76 Messages postés 2115 Statut Membre 388
       
      au fait ça sert à quoi le return false ?
      0
    5. avion-f16 Messages postés 19182 Date d'inscription   Statut Contributeur Dernière intervention   4 511
       
      C'est pour annuler l'envoie du formulaire.
      0
  3. Theophile76 Messages postés 2115 Statut Membre 388
     
    Merci à tous, j'ai réussi grâce à votre aide de cette manière :

    <FORM onsubmit="document.location.href = 'liens1.htlml/search/'+valeurdemacase.value; return false;">  
    
    <input style="background-color:#EAEAEA; height:30px; cursor:pointer" type="submit" value="Recherche Google" onclick="window.location='liens1.htlml/search/'+valeurdemacase.value">  
    
    </FORM>  
    

    On s'ennuie pas avec l'informatique :)
    0