jQuery(this).val() ne retourne pas la valeur de l'option sélectionnée

J'ai le script suivant à la fin de ma page:

<script type="text/javascript">
    jQuery.noConflict();
    jQuery(function() {
        jQuery('#optElem').change(function(){
            jQuery.post('http://example.com', { 'id1': 1, id2 : jQuery(this).val() },
                function(data){
                    jQuery('#abc').html(data.payload); 
                    jQuery('#abc').effect("highlight", {}, 3000);
                }, "json");
        });
    });
</script>

J'ai une option sur le terrain avec l'id 'optElem'. Le code ci-dessus est censé être déclenchée sur le changement de l'événement, et aussi j'ai envie de passer à la valeur de l'option sélectionnée pour le gestionnaire de rappel.

L'événement change est correctement déclenché et capturé par jQuery, cependant, j'obtiens une valeur vide pour id2 (ce qui est censé être la valeur de l'élément sélectionné).

Je suis à l'aide de JQuery(this).val() - mais qui est curieusement, en retournant une valeur vide - quelqu'un sait pourquoi?

L'option sélectionner le champ dans le code HTML ressemble aime ceci:

<div>
    <div>
        <span id="yearElem">Year: </span><span id="optElem">
            <select>
                <option value="2010">2010</option>
                <option value="2009">2009</option>
            </select>
        </span>
    </div>                      
</div>

OriginalL'auteur Stick it to THE MAN | 2010-01-03