Я думаю, что это может сработать:
$("#amount").keyup(function() {
var current = $("#combo option").length;
if(current < $(this).val()) {
for(var i = current + 1;i<=$(this).val();i++) {
$("#combo").append('<option value="'+i+'">'+i+'</option>');
}
} else {
for(var i=(parseInt($(this).val(),10)+1);i<=current;i++) {
$('#combo option[value="'+i+'"]').remove();
}
}
});
Возможно, вы захотите добавить проверку ввода для этой функции, но она делает то, что вам нужно, если вы правильно ее используете.
РЕДАКТИРОВАТЬ: просто чтобы уточнить, этот код не очищает весь блок выбора при каждом событии keyup, он просто добавляет новые параметры или удаляет последние, чтобы получить указанное количество значений.