Mam pole wyboru w formularzu, które przenosi przyrostowy atrybut rel. Mam funkcję, która może sortować opcje według ich wartości .text() w porządku alfabetycznym.Pole wyboru sortowania za pomocą jQuery
Moje pytanie brzmi, w jQuery, w jaki sposób sortować w kolejności rosnącej za pomocą atrybutu rel?
<option rel="1" value="ASHCHRC">Ashchurch for Tewkesbury </option>
<option rel="2" value="EVESHAM">Evesham </option>
<option rel="3" value="CHLTNHM">Cheltenham Spa </option>
<option rel="4" value="PERSHOR">Pershore </option>
<option rel="5" value="HONYBRN">Honeybourne </option>
<option rel="6" value="MINMARS">Moreton-in-Marsh </option>
<option rel="7" value="GLOSTER">Gloucester </option>
<option rel="8" value="GTMLVRN">Great Malvern </option>
<option rel="9" value="MLVRNLK">Malvern Link </option>
Moja funkcja sortowania: obiekt var; może być jednym z wielu pól wyboru w całym formularzu.
$(object).each(function() {
// Keep track of the selected option.
var selectedValue = $(this).val();
// sort it out
$(this).html($("option", $(this)).sort(function(a, b) {
return a.text == b.text ? 0 : a.text < b.text ? -1 : 1
}));
// Select one option.
$(this).val(selectedValue);
});
Jeśli rel zawsze będzie numeryczny, to Shoud 'parseInt()', że - inaczej zamówienie będzie '1,10 , 11,12,2,3,4 ... ' –
jak zaimplementować funkcję parseInt() intot powyższej funkcji? – Deano
@Deano zaktualizował odpowiedź –