el siguiente código devuelve 'indefinido' ...seleccione el cambio, obtienen los datos de valor de atributo
$('select').change(function(){
alert($(this).data('id'));
});
<select>
<option data-id="1">one</option>
<option data-id="2">two</option>
<option data-id="3">three</option>
</select>
¿Es mejor usar $ (this) .find (': selected') o $ (this) .children ('option: selected')? – ofko
Consulte esta pregunta: http://stackoverflow.com/questions/648004/what-is-fastest-children-or-find-in-jquery –