Obtenir l'index de l'option select dans un optgroup avec jquery

J'ai le select suivante:

<select name="end" id="end"> 
    <optgroup label="Morning"> 
        <option value="12:00a">12:00 am</option> 
        <option value="12:30a">12:30 am</option> 
        <option value="1:00a">1:00 am</option> 
        <option value="1:30a">1:30 am</option> 
    </optgroup> 
    <optgroup label="Evening"> 
        <option value="12:00p">12:00 pm</option> 
        <option value="12:30p">12:30 pm</option> 
        <option value="1:00p" selected="selected">1:00 pm</option> 
        <option value="1:30p">1:30 pm</option> 
    </optgroup> 
</select> 

J'ai besoin de trouver la globale indice de l'option sélectionnée, mais le "optgroup" est difficile. En d'autres termes, la sélection de l'un devrait revenir 6, mais il est de retour 2. J'ai essayé ceci:

var idx = $('#end :selected').prevAll().size();

Mais qui renvoie l'index à l'intérieur de cette "optgroup", et non pas l'indice d'ensemble. Je ne peux pas changer le format ou les valeurs de l'sélectionnez options.

source d'informationauteur Tauren | 2010-02-09