sorting combox onLoad

Ερωτήσεις και απαντήσεις σχετικές με την HTML, XHTML και την κατασκευή σελίδων για το Web.

Συντονιστές: WebDev Moderators, Super-Moderators

Απάντηση
dimtris155
Δημοσιεύσεις: 163
Εγγραφή: 06 Ιουν 2010 02:02

sorting combox onLoad

Δημοσίευση από dimtris155 » 07 Μάιος 2012 14:58

Καλησπέρα,

είμαι λίγο νέος στη html και εδώ και 2 μέρες προσπαθώ να σορτάρω τις τιμές ενός combobox κατά το φόρτωμα της σελίδας, αλλά δεν τα έχω καταφέρει.

Ο κώδικας που χρησιμοποιώ είναι:

<html>
<head>
<script type="text/javascript">
<!--

// sort function - ascending (case-insensitive)
function sortFuncAsc(record1, record2) {
var value1 = record1.optText.toLowerCase();
var value2 = record2.optText.toLowerCase();
if (value1 > value2) return(1);
if (value1 < value2) return(-1);
return(0);
}

// sort function - descending (case-insensitive)
function sortFuncDesc(record1, record2) {
var value1 = record1.optText.toLowerCase();
var value2 = record2.optText.toLowerCase();
if (value1 > value2) return(-1);
if (value1 < value2) return(1);
return(0);
}

function sortSelect(selectToSort, ascendingOrder) {
if (arguments.length == 1) ascendingOrder = true; // default to ascending sort

// copy options into an array
var myOptions = [];
for (var loop=0; loop<selectToSort.options.length; loop++) {
myOptions[loop] = { optText:selectToSort.options[loop].text, optValue:selectToSort.options[loop].value };
}

// sort array
if (ascendingOrder) {
myOptions.sort(sortFuncAsc);
} else {
myOptions.sort(sortFuncDesc);
}

// copy sorted options from array back to select box
selectToSort.options.length = 0;
for (var loop=0; loop<myOptions.length; loop++) {
var optObj = document.createElement('option');
optObj.text = myOptions[loop].optText;
optObj.value = myOptions[loop].optValue;
selectToSort.options.add(optObj);
}
}
//-->
</script>
</head>

<body onLoad="sortSelect(this.form['mySelect'], true)">
<form>
<select name="mySelect" >
<option value="3">Cat</option>
<option value="4">Dog</option>
<option value="2">Fish</option>
<option value="1">Bird</option>
<option value="1">ΑΑΑΑ</option>
<option value="1">ΒΒΒΒ</option>
<option value="1">ΓΓΓΓ</option>
</select>
</form>
</body>
</html>

Μπορεί κάποιος να με βοηθήσει?

Ευχαριστώ,

Απάντηση

Επιστροφή στο “HTML και XHTML”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες