Удалить добавленный input при выборе другого значения в select
Доброго времени суток!
Пример скрипта
<select>
<option value="1">one</option>
<option value="2">two</option>
</select>
<div hidden>
</div>
<script src="js/jquery.js"></script>
<script>
var div = $('#div');
$(function ()
{
$('#select').change(function(){
var slc = $('option:selected',this).val();
if (slc=='1'){
if(div.attr('hidden') != undefined){
div.show();
div.removeAttr('hidden');
for(let i=1; i < 5; i++){
var inp = document.createElement('input');
inp.setAttribute('id', 'inp'+i);
div.append(inp);
}
}
if (slc=='2'){
if(div.attr('hidden') != undefined){
div.show();
div.removeAttr('hidden');
for(let i=1; i < 3; i++){
var inp = document.createElement('input');
inp.setAttribute('id', 'inp'+i);
div.append(inp);
}
}
});
});
</script>
Если выбрать какое-нибудь значение селекта, он создает input с количеством указанных в цикле, но если выбрать другое значение, то он добавляет к созданным элементам свое количество. Как сделать, чтобы прорисовывалось именно столько элементов, сколько необходимо при выборе определенного значения?
|