Rasta_far_eyes
Messages postés3Date d'inscriptionjeudi 6 octobre 2005StatutMembreDernière intervention18 mai 2006
-
15 mai 2006 à 16:33
Rasta_far_eyes
Messages postés3Date d'inscriptionjeudi 6 octobre 2005StatutMembreDernière intervention18 mai 2006
-
18 mai 2006 à 10:29
Bonjour,
J'ai un petit soucis sur un projet: j'ai de nombreux formulaires, sur chaque textBox j'ai attaché une fonction javascript qui simule la tabulation en appuyant sur la touche entrée permettant donc de passer au controle suivant ( c'est une exigence du client ).
Cela fonctionnait tres bien avec des controles de type Button en mettant leur propriété UseSubmitBehavior à false.
Le probleme est que le client ( toujours lui ) préfére des ImageButton et que la ca ne fonctionne plus du tout ...
Ca tabule sur les premiers textBox et apres inlassablement ca declenche l'evenement d'un des ImageButton ...
jesusonline
Messages postés6814Date d'inscriptiondimanche 15 décembre 2002StatutMembreDernière intervention13 octobre 201029 17 mai 2006 à 01:41
Bpnsoir,
quand tu cliques sur entrer du premier textbox, ou le focus se met-il ? quel est la fonction getElementByTabIndex ? t'es sur qu'il n'y a aucun problème de ce coté ?
PS : evite d'écrire onKeyUp mais onkeyup (c'est comme ca qu'on doit l'ecrire dixit les standards) ca me fait pensser t'as essayé sur l'evenement onkeydown ?
Rasta_far_eyes
Messages postés3Date d'inscriptionjeudi 6 octobre 2005StatutMembreDernière intervention18 mai 2006 18 mai 2006 à 10:29
Bonjour,
En fait c'est très aléatoire selon les pages, sur une le focus va bien se mettre sur le textBox d'apres mais inévitablement au bout d'un moment ( ca fonctionne sur les deux trois premiers textbox ) l'evenement d'un des imageButton est declenché.
J'ai essayé avec "onkeydown" mais ca ne marche pas mieux .
La fonction getElementByTabIndex fonctionait tres bien lorsqu'il y'avait des boutons sur les pages , la voici :
private
static
string getElementByTabIndex(
Page p,
int tabIndex)
{
string retour =
"";
foreach (
Control C
in p.Controls)
{
if (C.GetType().ToString() ==
"ASP.masterpage_master")
{
foreach (
Control D
in C.Controls)
{
if (D.GetType().ToString() ==
"System.Web.UI.HtmlControls.HtmlForm")
{
foreach (
Control E
in D.Controls)
{
if (E.GetType().ToString() ==
"System.Web.UI.WebControls.ContentPlaceHolder")
{
foreach (
Control F
in E.Controls)
{
if (F
is
WebControl)
{
if (((
WebControl)F).TabIndex == tabIndex)
{
retour = F.ID;
break;
}
...}
return retour;
}
C'est un peu lourdingue mais ca fonctionnait, bref ça m'a l'air insoluble comme probleme on va former les secretaires à utiliser la touche tabulation je crois