dinos33 Δημοσ. 22 Αυγούστου 2010 Δημοσ. 22 Αυγούστου 2010 Καλησπέρα! Ξέρει κανείς πώς μπορώ να πάρω το value από ένα <input> χωρίς να χρειαστεί να κάνω refresh (π.χ. χωρίς να κάνω submit ένα form)... σκέφτομαι κάτι σε Javascript που να εκτελείται στο OnChange. Για παράδειγμα... ><input type="text" name="username" onChange="javascript:value2var()" /> Όταν γράψει ο χρήστης κάτι στο πεδίο κειμένου με όνομα "username" τότε θα εκτελεστεί η javascript function value2var(); ... εγώ θέλω τη βοήθειά σας γι' αυτή τη function (νομίζω ότι χρειάζεται JavaScript γι' αυτό, μιας και θα γίνεται στον browser και η JavaScript είναι client-side γλώσσα) αυτό που θέλω να κάνει είναι να παίρνει το value απ' το πεδίο του κειμένου (στο παράδειγμά μας) και να το βάζει σε μία μεταβλητή με το name του πεδίου. Αν δηλαδή ο χρήστης έγραφε "Hello!" στο πεδίο του κειμένου, τότε θα έπρεπε να δημιουργηθεί μια μεταβλητή "username" που θα είχε οριστεί σε "Hello!"
dinos33 Δημοσ. 22 Αυγούστου 2010 Μέλος Δημοσ. 22 Αυγούστου 2010 Καλησπέρα! Ξέρει κανείς πώς μπορώ να πάρω το value από ένα <input> χωρίς να χρειαστεί να κάνω refresh (π.χ. χωρίς να κάνω submit ένα form)... σκέφτομαι κάτι σε Javascript που να εκτελείται στο OnChange. Για παράδειγμα... ><input type="text" name="username" onChange="javascript:value2var()" /> Όταν γράψει ο χρήστης κάτι στο πεδίο κειμένου με όνομα "username" τότε θα εκτελεστεί η javascript function value2var(); ... εγώ θέλω τη βοήθειά σας γι' αυτή τη function (νομίζω ότι χρειάζεται JavaScript γι' αυτό, μιας και θα γίνεται στον browser και η JavaScript είναι client-side γλώσσα) αυτό που θέλω να κάνει είναι να παίρνει το value απ' το πεδίο του κειμένου (στο παράδειγμά μας) και να το βάζει σε μία μεταβλητή με το name του πεδίου. Αν δηλαδή ο χρήστης έγραφε "Hello!" στο πεδίο του κειμένου, τότε θα έπρεπε να δημιουργηθεί μια μεταβλητή "username" που θα είχε οριστεί σε "Hello!"
dewn735 Δημοσ. 22 Αυγούστου 2010 Δημοσ. 22 Αυγούστου 2010 Τι ακριβώς θες να κάνεις; Η λογική σου είναι σωστή (αν και το onchange λιγάκι επικίνδυνο - εύκολα μπλέκεις σε ατέρμονα βρόγχο...).
dewn735 Δημοσ. 22 Αυγούστου 2010 Δημοσ. 22 Αυγούστου 2010 Τι ακριβώς θες να κάνεις; Η λογική σου είναι σωστή (αν και το onchange λιγάκι επικίνδυνο - εύκολα μπλέκεις σε ατέρμονα βρόγχο...).
dinos33 Δημοσ. 22 Αυγούστου 2010 Μέλος Δημοσ. 22 Αυγούστου 2010 Στην πραγματικότητα αυτό που θέλω να κάνω είναι να μπορώ να παίρνω το κείμενο από ένα πεδίο κειμένου και την τιμή ενός slider (το range της HTML5) ><input type="range" min="-100" max="100" value="0" step="1" /> και να τα βάλω σε ένα cookie απ' το οποίο θα παίρνει τις μεταβλητές ένα iframe για να δείχνει σε πραγματικό χρόνο τις αλλαγές, χωρίς να χρειάζεται να πατήσει κάποιο κουμπί ο χρήστης. Αυτό το θέλω για να μπορεί να ορίζει τη φωτεινότητα σε ένα web app επεξεργασίας εκόνας και να το βλέπει στο preview (το iframe που λέγαμε) ώστε να αποφασίσει, κάνοντας αλλαγές στον slider, που θέλει ο χρήστης τη φωτεινότητα (αυτό ισχύει και για άλλους sliders, για contrast κ.τ.λ.) πριν πατήσει το τελικό κουμπί που ενεργοποιεί το form της parent page και τον πάει στην τελική σελίδα που με τη βοήθεια της PHP του δίνει ένα τελειωμένο PNG. Δεν υπάρχει κάποιος τρόπος να πάρω την τιμή (value) χωρίς form ή γενικά refresh;! UPDATE: Όσο για το onchange, μπορεί και να το αποφύγω (στους sliders τουλάχιστον) με onMouseUp
dinos33 Δημοσ. 22 Αυγούστου 2010 Μέλος Δημοσ. 22 Αυγούστου 2010 Στην πραγματικότητα αυτό που θέλω να κάνω είναι να μπορώ να παίρνω το κείμενο από ένα πεδίο κειμένου και την τιμή ενός slider (το range της HTML5) ><input type="range" min="-100" max="100" value="0" step="1" /> και να τα βάλω σε ένα cookie απ' το οποίο θα παίρνει τις μεταβλητές ένα iframe για να δείχνει σε πραγματικό χρόνο τις αλλαγές, χωρίς να χρειάζεται να πατήσει κάποιο κουμπί ο χρήστης. Αυτό το θέλω για να μπορεί να ορίζει τη φωτεινότητα σε ένα web app επεξεργασίας εκόνας και να το βλέπει στο preview (το iframe που λέγαμε) ώστε να αποφασίσει, κάνοντας αλλαγές στον slider, που θέλει ο χρήστης τη φωτεινότητα (αυτό ισχύει και για άλλους sliders, για contrast κ.τ.λ.) πριν πατήσει το τελικό κουμπί που ενεργοποιεί το form της parent page και τον πάει στην τελική σελίδα που με τη βοήθεια της PHP του δίνει ένα τελειωμένο PNG. Δεν υπάρχει κάποιος τρόπος να πάρω την τιμή (value) χωρίς form ή γενικά refresh;! UPDATE: Όσο για το onchange, μπορεί και να το αποφύγω (στους sliders τουλάχιστον) με onMouseUp
jazzcho Δημοσ. 22 Αυγούστου 2010 Δημοσ. 22 Αυγούστου 2010 Η Javascript έχει πλήρη πρόσβαση στα μπισκότα. Οπότε χρειάζεσαι μια function που θα διαβάζει την τιμή που θες και θα γράφει το cookie. Δεν έχω καταλάβει τι ακριβώς θες να κάνεις με το iframe, οπότε μπορεί να υπάρχουν θέματα browser security που να εμποδίζουν κάποια πράγματα.
jazzcho Δημοσ. 22 Αυγούστου 2010 Δημοσ. 22 Αυγούστου 2010 Η Javascript έχει πλήρη πρόσβαση στα μπισκότα. Οπότε χρειάζεσαι μια function που θα διαβάζει την τιμή που θες και θα γράφει το cookie. Δεν έχω καταλάβει τι ακριβώς θες να κάνεις με το iframe, οπότε μπορεί να υπάρχουν θέματα browser security που να εμποδίζουν κάποια πράγματα.
dinos33 Δημοσ. 22 Αυγούστου 2010 Μέλος Δημοσ. 22 Αυγούστου 2010 Δεν έχω καταλάβει τι ακριβώς θες να κάνεις με το iframe Άσε το κομμάτι με το iframe, δε σας ενδιαφέρει εσάς αυτό, το ανέφερα απλά επειδή με ρώτησε ο dewn735. Στην παραπάνω εικόνα φαίνεται ακριβώς τι θέλω να κάνω εσάς σας ενδιαφέρει αυτό που δείχνει το βελάκι, δηλαδή η javascript function που θα με βοηθήσει να πάρω την τιμή απ' το slider και να την βάλω στην μεταβλητή χωρίς να κάνω refresh. Μετά εγώ θα βάλω αυτήν την μεταβλητή σε ένα cookie και απ' αυτό το cookie θα παίρνει την μεταβλητή ένα iframe, αλλά αυτό είναι τελείως άσχετο με την ερώτησή μου, απλά σας είπα τι σκοπεύω να κάνω και για ποιόν λόγο θέλω να το κάνω. Ελπίζω να έχετε καταλάβει τι θέλω να κάνει αυτή η function, υπάρχει κανείς που μπορεί να μου πει πώς μπορώ να το κάνω αυτό (και ας μην είναι με JavaScript) γιατί δεν έχω ιδέα (ούτε από JavaScript, ούτε γενικά πως να το κάνω). Ευχαριστώ για τον χρόνο σας
dinos33 Δημοσ. 22 Αυγούστου 2010 Μέλος Δημοσ. 22 Αυγούστου 2010 Δεν έχω καταλάβει τι ακριβώς θες να κάνεις με το iframe Άσε το κομμάτι με το iframe, δε σας ενδιαφέρει εσάς αυτό, το ανέφερα απλά επειδή με ρώτησε ο dewn735. Στην παραπάνω εικόνα φαίνεται ακριβώς τι θέλω να κάνω εσάς σας ενδιαφέρει αυτό που δείχνει το βελάκι, δηλαδή η javascript function που θα με βοηθήσει να πάρω την τιμή απ' το slider και να την βάλω στην μεταβλητή χωρίς να κάνω refresh. Μετά εγώ θα βάλω αυτήν την μεταβλητή σε ένα cookie και απ' αυτό το cookie θα παίρνει την μεταβλητή ένα iframe, αλλά αυτό είναι τελείως άσχετο με την ερώτησή μου, απλά σας είπα τι σκοπεύω να κάνω και για ποιόν λόγο θέλω να το κάνω. Ελπίζω να έχετε καταλάβει τι θέλω να κάνει αυτή η function, υπάρχει κανείς που μπορεί να μου πει πώς μπορώ να το κάνω αυτό (και ας μην είναι με JavaScript) γιατί δεν έχω ιδέα (ούτε από JavaScript, ούτε γενικά πως να το κάνω). Ευχαριστώ για τον χρόνο σας
dewn735 Δημοσ. 22 Αυγούστου 2010 Δημοσ. 22 Αυγούστου 2010 Μάλλον θέλεις κάτι τέτοιο ... ><script language="javascript"> function value2var() { var=document.getElementById("slider").value; //Έχουμε την τιμή του slider document.cookie = "myvar="+var+"; expires=Fri, 3 Aug 2050 20:47:11 UTC; path=/"; //...και την αποθηκεύουμε σε cookie με το όνομα myvar } </script> <input type="text" name="slider" id="slider" onChange="javascript:value2var()" />
dewn735 Δημοσ. 22 Αυγούστου 2010 Δημοσ. 22 Αυγούστου 2010 Μάλλον θέλεις κάτι τέτοιο ... ><script language="javascript"> function value2var() { var=document.getElementById("slider").value; //Έχουμε την τιμή του slider document.cookie = "myvar="+var+"; expires=Fri, 3 Aug 2050 20:47:11 UTC; path=/"; //...και την αποθηκεύουμε σε cookie με το όνομα myvar } </script> <input type="text" name="slider" id="slider" onChange="javascript:value2var()" />
dinos33 Δημοσ. 22 Αυγούστου 2010 Μέλος Δημοσ. 22 Αυγούστου 2010 Μάλλον θέλεις κάτι τέτοιο ... Ναι, ακριβώς αυτό ήθελα! Το ήξερα ότι ήταν απλό, αλλά δεν έχω ιδέα από Javascript. Ευχαριστώ dewn735, με έσωσες
dinos33 Δημοσ. 22 Αυγούστου 2010 Μέλος Δημοσ. 22 Αυγούστου 2010 Μάλλον θέλεις κάτι τέτοιο ... Ναι, ακριβώς αυτό ήθελα! Το ήξερα ότι ήταν απλό, αλλά δεν έχω ιδέα από Javascript. Ευχαριστώ dewn735, με έσωσες
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.