Would like to point out that the answer above is the best solution so far.
$('select option:not(:selected)').each(function(){ $(this).attr('disabled', 'disabled'); });
For the reason that, even when it's still disabled, the value still pass to the database without an error.