var lastValue;
$('#qty').live('change', function () {
if ((this.value) == 10) {
$(this).replaceWith($('<input/>', {
'type': 'text',
'value': +(this.value)
}));
}
else{
lastValue = this.value;
}
});
And then use lastValue to reset the value of the selectbox when you have to show it.
EDIT : modified the jsfiddle, you jsut need to create the list again
http://jsfiddle.net/qje6uywg/5/
solved Save value of a drop-down list and reassign it