Uberalles_gr Δημοσ. 5 Μαΐου 2010 Δημοσ. 5 Μαΐου 2010 Καλημέρα παιδιά, έχω αυτό το select που είναι Multiple > <select multiple="multiple" name="category[]" id="category[]"> ....... ....... </select> και ρωτάω πως μπορώ μέσα από javascript να ελέγχω εάν έχει πατήσει έστω και μία από τις επιλογές?
kwstas_pap Δημοσ. 5 Μαΐου 2010 Δημοσ. 5 Μαΐου 2010 νομίζω γίνεται με ajax. αλλά δεν ξέρω λεπτομέρειες.
Uberalles_gr Δημοσ. 5 Μαΐου 2010 Μέλος Δημοσ. 5 Μαΐου 2010 Κάτι απλό δεν υπάρχει π.χ. για να ελέγχεις ένα text γράφεις > doucment.myform.mytext.value κάτι αντίστοιχο δεν υπάρχει για select-multiple γιατί ψάχνω στον γούγλη αλλά δεν μπορώ να βρω κάτι
macabre_sunsets Δημοσ. 5 Μαΐου 2010 Δημοσ. 5 Μαΐου 2010 >for (var i=category.options.length-1; i >= 0;i++) { if (category.options[i].selected) { // do something } } Βέβαια με το "category[]" που έχεις δεν ξέρω αν θα υπάρξει πρόβλημα.
wyldez Δημοσ. 5 Μαΐου 2010 Δημοσ. 5 Μαΐου 2010 Έστω ότι το multiple select είναι έτσι: ><select multiple="multiple" name="category[]" id="category[]" onChange="getValues();"> <option value="1">Option one</option> <option value="2">Option two</option> </select> Τότε στο αρχείο .js που έχεις τα άλλα functions σου θα πρέπει να προσθέσεις: >function getValues() { var userselection = document.getElementById('category[]').selectedIndex; alert("Selected option's value is: "+document.getElementById('category[]').value); } Το παραπάνω απλά σου πετάει ένα παραθυράκι για να δείς ότι όντως δουλεύει όταν υπάρχει αλλαγή του value από τον χρήστη. Αλλά από εκεί και πέρα μπορείς να χρησιμοποιήσεις το option αυτό (το οποίο πλέον είναι αποθηκευμένο στην μεταβλητή userselection) αφού το έχεις κάνει fetch με την συναρτηση getValues() για οποιονδήποτε άλλο σκοπό θέλεις. Και φυσικά να φροντίσεις να κάνεις import το αρχείο αυτό στο header της σελίδας στην οποία θα βρίσκεται το multiple selection box. Εάν δεν έχεις ξεχωριστό αρχείο για τα javascript μπιχλιμπίδια σου, απλά φρόντισε να βάλεις το παραπάνω function μέσα σε <script type="text/javascript"></script> μεταξύ των <head></head> tags της σελίδας.
Uberalles_gr Δημοσ. 6 Μαΐου 2010 Μέλος Δημοσ. 6 Μαΐου 2010 Το έκανα ως εξής > if (document.getElementById('category[]').value.length == 0) { alert("Παρακαλώ συμπληρώστε το πεδίο 'Κατηγορία'!"); document.getElementById('category[]').focus(); return false; } που ελέγχω εάν έχει πατήσει έστω και ένα από το multiple select
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.