Forcer le focus à la réouverture d'un popup
Bonjour
J'ai bâti un formulaire de recherche qui renvoie les résultats dans une autre fenêtre. Cette fenêtre "rech_spec" s'ouvre donc en popup et prend le focus.
Code:
1 2 3 4 5
| <form method="post" action="recherche_speciale.php" target="rech_spec" onsubmit="javascript:window.open('','rech_spec','status=no,directories=no,toolbar=no,location=no,menubar=no,left=500,top=10,scrollbars=no')" />
<input type=radio name="type_rech_spec" value="nom" checked/>nom
<input type=radio name="type_rech_spec" value="PEO" />PEO
<input type=text name="rech" size=14 value="recherche spéciale" onFocus="if(this.value=='recherche spéciale') this.value='';" onBlur="if(this.value=='') this.value='recherche spéciale';" />
</form> |
Quand l'utilisateur clique sur un des liens de la fenêtre de résultat, il retourne à la fenêtre principale (avec comme argument la valeur recherchée).
Code:
echo '<a href="javascript:window.opener.location.href(\'index.php?sel='.$data_abreg_spec["ABREGE"].'\')"/>'
Par contre, si l'utilisateur refait une recherche depuis la page principale sans avoir fermé la fenêtre "rech_spec", celle-ci ne prend pas le focus, et l'utilisateur a l'impression que la recherche ne fonctionne pas.
Comment obliger la fenêtre cible à prendre le focus quand on l'appelle pour la 2è fois ?
J'ai pensé à ces solutions, qui ne me plaisent pas trop :
- mettre une cible vide (target=blank), mais ca risque de multiplier le nombre de fenêtres
- mettre un "onload=this.focus" (ou un truc dans le genre, je bredouille à peine le javascript :mrgreen: ) dans la balise <body> de la fenêtre cible.
Merci pour d'autres idées plus simples :)