Accedi per seguire   
Seguaci 0
rubagalline

[html] Tabindex Su Più Form

17 messaggi in questa discussione

Ciao a tutti.

Magari è una domanda stupidissima, ma volevo sapere se è possibile ridefinire l'ordine di tabulazione per più form di una stessa pagina html.

Io ho provato impostando l'attributo "tabindex" nei tag, ma non fa proprio quello che volevo! :sigh:

Magari con un esempio mi spiego meglio:

<form id=form1 ...>
<input type=text id=text11 tabindex=1>
<input type=text id=text12 tabindex=2>
</form>

<form id=form2 ...>
<input type=text id=text21 tabindex=1>
<input type=text id=text22 tabindex=2>
<input type=text id=text23 tabindex=3>
</form>

Vorrei che se è si è sul form1 si eseguisse la tabulazione in ordine per form1 (e poi eventualmente le altre presenti sulla pagina), mentre se è si è sul form2 si eseguisse la tabulazione in ordine per form2 (e poi eventualmente le altre presenti sulla pagina). :P

Invece mi fa la tabulazione un po' a casaccio, forse perchè nella stessa pagina ci sono tabindex uguali!!!! :P

O magari quello che voglio fare non si può con il semplice html... <_< :sigh:

Come posso fare?

Come sempre, grazie! :)

Modificato da rubagalline

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Invece mi fa la tabulazione un po' a casaccio, forse perchè nella stessa pagina ci sono tabindex uguali!!!!  :)

128042[/snapback]

Risposta esatta :P

L'attributo tabindex è un numero univoco che rappresenta l'ordine di sequenza dell'elemento all'interno della catena di tab di tutti gli elementi che possono ricevere il focus all'interno del documento intero...

Quando dai a due elementi lo stesso indice, verrà selezionato il primo dei due che appare all'interno del documento e poi l'altro. Quindi, con il codice che hai scritto tu, il focus salta dalla prima form alla seconda in modo alterno:

text11

text21

text12

text22

text23

Ciao ciao :P

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Acc! Allora non posso proprio fare quello che volevo!

Cmq grazie per la risposta precisa e tempestiva come sempre!!!!!!!!!!!!!!!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Acc! Allora non posso proprio fare quello che volevo!

Cmq grazie per la risposta precisa e tempestiva come sempre!!!!!!!!!!!!!!!

128057[/snapback]

Scusa, ma modificare il codice così:

<form id=form1 ...>
<input type=text id=text11 tabindex=1>
<input type=text id=text12 tabindex=2>
</form>

<form id=form2 ...>
<input type=text id=text21 tabindex=3>
<input type=text id=text22 tabindex=4>
<input type=text id=text23 tabindex=5>
</form>

??? :P

Oppure non inserire proprio i tabindex e lasciare che il browser si arrangi da solo nel determinare l'ordine corretto :)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Sì ma scusa, così se sono su form2 e digito tab, la tabulazione mi sisposta su form1 che ha "tabindex=1"!!!

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Sì ma scusa, così se sono su form2 e digito tab, la tabulazione mi sisposta su form1 che ha "tabindex=1"!!!

128708[/snapback]

No, se sei su form2 nella casella di testo con tabindex=3 e digiti tab, il fuoco si sposta nella casella con il valore di tabindex superiore, in questo caso 4, tabindex serve proprio a questo, altrimenti avrebbe poco senso utilizzarlo. :P:)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Grazie!!! Adesso funziona!

E' così intelligente il tabindex che se la prima volta mi posiziono sul campo con tabindex=3 va aa quello con tabindex=4 e non a quello con tabindex=1.

Forse era anche logico che facesse così...

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
No, se sei su form2 nella casella di testo con tabindex=3 e digiti tab, il fuoco si sposta nella casella con il valore di tabindex superiore, in questo caso 4, tabindex serve proprio a questo, altrimenti avrebbe poco senso utilizzarlo. :wub::P

128721[/snapback]

Però si sarebbe spostato lo stesso sul campo con tabindex=4 anche senza l'attributo tabindex.... :P

E' solo che con tabindex posso far saltare il fuoco al campo che voglio io... E' solo che pensavo che iniziasse dall'1 la prima volta che digito tab e invece continua a "contare" rispetto al campo corrente!!! :)

Cosa fa però dopo aver esaminato tutti i tabindex espiciti??!? Segue il flusso del documento?

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Però si sarebbe spostato lo stesso sul campo con tabindex=4 anche senza l'attributo tabindex....  :P

E' solo che con tabindex posso far saltare il fuoco al campo che voglio io... E' solo che pensavo che iniziasse dall'1 la prima volta che digito tab e invece continua a "contare" rispetto al campo corrente!!!  :)

Cosa fa però dopo aver esaminato tutti i tabindex espiciti??!? Segue il flusso del documento?

128851[/snapback]

Sì e alla fine ricomincia da capo :P

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Però si sarebbe spostato lo stesso sul campo con tabindex=4 anche senza l'attributo tabindex....  :P

[...]

128851[/snapback]

Sì, se hai progettato bene la pagina, il fuoco si sposta regolarmente sulla casella successiva. L'attributo tabindex è utile soprattutto per definire l'ordine di tabulazione all'interno della pagina, non solo per ciò che riguarda i moduli ma anche, volendo, per le ancore (link), in modo tale che una pagina sia completamente navigabile tramite tastiera, nei casi in cui ci sia da stabilire un ordine preciso di tabulazione. Ciò è molto utile per chi ha problemi nell'utilizzo del mouse. :P:)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Scusate la domanda scemotta, ma per scrivere un tab come si fa nella textarea di un form dove sono impostati dei tabindex? :) Bisogna fare copia e incolla dal blocco note?

Modificato da Nancy

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Scusate la domanda scemotta, ma per scrivere un tab come si fa nella textarea di un form dove sono impostati dei tabindex? :) Bisogna fare copia e incolla dal blocco note?

Ehm non ho capito il problema... :P

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Ehm non ho capito il problema... :P

Se invece di uno spazio, volessi scrivere un tab, come quando uso un word editor del pc, come faccio? Devo scriverlo nel word editor e poi incollarlo nella pagina internet? :) Scusa se non sono stata chiara, ciao e grazie per l'attenzione. :P

Modificato da Nancy

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Scusate la domanda scemotta, ma per scrivere un tab come si fa nella textarea di un form dove sono impostati dei tabindex? :) Bisogna fare copia e incolla dal blocco note?

Non credo proprio sia possibile :leggi:

Forse intercettando il tasto premuto da JavaScript.. Provo e ti faccio sapere :up1:

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Con queste due funzioni diventa possibile, la prima (inserisci) intercetta la pressione del tasto tab ed inserisce una tabulazione nel campo text, la seconda (check) si accerta che la perdita del focus sia dovuta alla pressione dello stesso tasto tab:

<script language="javascript">
premuto = false;
function inserisci()
{
	if (window.event.keyCode == 9)
	{
		document.tab.testo.value += "\t";
		premuto = true;
	}
}
function check()
{
	if (premuto)
	{
		document.tab.testo.focus();
		premuto = false;
	}
}
</script>

Ora nel campo di input text bisogna associare le funzioni agli eventi: inserisci con onKeyDown e check con onBlur

<form name="tab">
<input type="text" name="testo" onkeydown="inserisci()" onblur="check()">
</form>

:up1:

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Sei un geniaccio :) te lo devo dire.

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti
Sei un geniaccio :P te lo devo dire.

Si si concordo pienamente :P:)

Condividi questo messaggio


Link di questo messaggio
Condividi su altri siti

Crea un account o accedi per lasciare un commento

Devi essere un utente registrato per partecipare

Crea un account

Iscriviti per un nuovo account nella nostra community. È facile!


Registra un nuovo account

Accedi

Sei già registrato? Accedi qui.


Accedi Ora
Accedi per seguire   
Seguaci 0