daidalus Δημοσ. 3 Ιανουαρίου 2005 Δημοσ. 3 Ιανουαρίου 2005 Γεια χαρά! Έχω ένα popup window που περιέχει μια λίστα με τιμές (σε <select>) και θέλω αφού ο χρηστης επιλέξει τις τιμές που θέλει (μπορεί να επιλέξει περισσότερες από μια) και πατήσει OK, το popup να κλείνει και οι τιμές να επιστρέφονται πίσω στην σελίδα από την οποία άνοιξε το popup. ΔΕΝ θέλω να χρησιμοποιήσω το query string για το πέρασμα των τιμών γιατί οι τιμές μπορεί να είναι πολλές όπως επίσης ΔΕΝ θέλω να χρησιμοποιήσω session variables για τον ίδιο λόγο.Θέλω απλή JavaScript που να περνάει τα επιλεγμένα στοιχεία του <select> σε ένα άλλο control στην αρχική σελίδα. Πρέπει να είναι κάτι σαν το παρακάτω αλλά κάτι κάνω λάθος και δεν μου επιστρέφονται τιμές.Εδώ δοκίμάζω να διαβάσω όλες τις τιμές αλλά τελικά δεν επιστρέφεται τιποτα :? : ><script> function PassValuesAndClose() { window.opener.document.Form1.select1.value = select.value; window.close(); } </script> //οπου Form1 ειναι η αρχική σελίδα και select1 ενα html listbox στην αρχική σελίδα SELECT id="select" runat="server"> <OPTION> .... </OPTION> </SELECT> <INPUT type="button" value="OK" onclick="PassValuesAndClose();"> Η αρχική σελίδα ειναι σε ASP.NET αν και αυτό δεν νομίζω να παίζει ρόλο αφού χρησιμοποιώ HTML controls. Ευχαριστώ πολύ.
Γηρυόνης Δημοσ. 3 Ιανουαρίου 2005 Δημοσ. 3 Ιανουαρίου 2005 Χρειάζεσαι ένα for βρόχο για να το κάνεις αυτό. Κάτι σαν > var data; for (var i=0;i<document.form2.select.options.length;i++) { if (document.form2.select.options[i].selected) { data += document.form2.select.options[i].value + '&'; } } window.opener.document.Form1.select1.value = data; όπου form2 είναι το όνομα της φόρμας στην τρέχουσα σελίδα. Θα πρέπει μετά να βρεις έναν τρόπο για να σπάσεις τις τιμές βασιζόμενος στο χαρακτήρα "&" όταν τις στείλεις στο server.
daidalus Δημοσ. 3 Ιανουαρίου 2005 Μέλος Δημοσ. 3 Ιανουαρίου 2005 Οκ σε ευχαριστώ για τη βοήθεια σου.Τώρα δουλεύει μια χαρά αλλά βρήκα και άλλο ενα πρόβλημα.Για κάποιο λόγο δεν μπορώ να καλέσω JS functions απο τον κωδικα μου!Δηλαδή εαν γράψω ><INPUT id="bttnCancel" type="button" value="Cancel" onclick="CloseWindow()"> .... function CloseWindow() { window.close(); } δεν δουλεύει.Αν όμως γράψω ><INPUT id="bttnCancel" type="button" value="Cancel" onclick="javascript:window.close();"> δουλεύει μια χαρά. Καμμιά ιδέα?
Γηρυόνης Δημοσ. 4 Ιανουαρίου 2005 Δημοσ. 4 Ιανουαρίου 2005 Τη function CloseWindow την έχεις μέσα σε JavaScript tags; Δοκίμασε επίσης να κάνεις > <INPUT id="bttnCancel" type="button" value="Cancel" onclick="javascript:CloseWindow();">
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.