Uberalles_gr Δημοσ. 11 Ιουνίου 2010 Δημοσ. 11 Ιουνίου 2010 Καλησπέρα παιδιά, έχω την εξής function σε javascript > function test() { document.getElementById("test").focus(); } Το πρόβλημα μου είναι πως γίνεται στο όρισμα του getElementById να μπορώ να περάσω μία μεταβλητή javascript, δηλαδή να γράψω το παρακάτω: > function test(id) { var test = "goto"+id; document.getElementById(test).focus(); } αλλά δεν παίζει........ Κάποια ιδέα?
Seldimi Δημοσ. 11 Ιουνίου 2010 Δημοσ. 11 Ιουνίου 2010 Εμένα μια χαρά δούλεψε (και ορίστε το παράδειγμα μου) ><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Untitled </title> <script> function test(id) { var test = "goto"+id; document.getElementById(test).focus(); } </script> </head> <body> <a href="#" onclick="test(5);return false">focus it</a> <input type="text" id="goto5" name="goto5"/> </body> </html>
Uberalles_gr Δημοσ. 11 Ιουνίου 2010 Μέλος Δημοσ. 11 Ιουνίου 2010 Σε ευχαριστώ για τον χρόνο σου. Πράγματι παίζει αυτό αλλά εκεί που θέλω να το χρησιμοποιήσω έχει αρκετά input type=text και σου παραθέτω τον παρακάτω κώδικα που δεν παίζει > <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Untitled </title> <script> function test(id) { var test = "goto"+id; document.getElementById(test).focus(); } </script> </head> <body> <input type="text" id="goto5" name="goto5" onblur="test('5')"/> <input type="text" /> </body> </html> ουσιαστικά όταν χάνεται το focus από το 1ο input τότε καλώ μία συνάρτηση και του λέω να με ξανά κάνει focus στο 1o input Και δεν γίνεται... Γιατί?
Seldimi Δημοσ. 11 Ιουνίου 2010 Δημοσ. 11 Ιουνίου 2010 Σε έχασα εδώ.... προσπαθείς δλδ αν ο χρήστης έχει focus το πεδίο 1 και προσπαθήσει να φύγει αλλού να ξακάνει αυτόματα focus στο πεδίο 1 ?
Uberalles_gr Δημοσ. 11 Ιουνίου 2010 Μέλος Δημοσ. 11 Ιουνίου 2010 Ουσιαστικά θέλω όταν χάσει το focus από το πεδίο 1 να καλέσει μία function.. να κάνω κάτι ελέγχους και εάν χρειαστεί να τον ξανά γυρίσω στο πεδίο 1.... Το πρόβλημα είναι ότι δεν γυρνάει...
beHappy Δημοσ. 11 Ιουνίου 2010 Δημοσ. 11 Ιουνίου 2010 ><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> <head> <title>Untitled </title> <script> function test(obj) { [b][color="Red"]globalvar = obj; setTimeout("globalvar.focus()",10);[/color][/b] } </script> </head> <body> <input type="text" id="goto5" name="goto5" onblur="test(this)"/> <input type="text" /> </body> </html> Ο κώδικας σου δεν έτρεχε σε Firefox γιατί ο Firefox χρειάζεται λίγο χρόνο για να επαναφέρει το Focus στο αντικείμενο. Για τον λόγο αυτό χρειάζεται να προσθέσεις ένα setTimeOut.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.