Ответы пользователя по тегу HTML
  • Как удалить сгенерированное поле?

    turintomsk
    @turintomsk
    developer
    DOM элемент должен иметь уникальное значение ID, в Вашем случае, есть некоторый элемент с ID="surgeon". Вставляя в него input укажите новый ID, как пример: surgeon_N где N - это целое число.
    Так же если я верно понимаю, то Вы хотите указать несколько полей с name="surgeon". Для того, что бы они корректно (массивом) ушли на сервер, необходимо указать, name="surgeon[]" - квадратные скобки указывают на принадлежность к массиву.
    Если хотите оставить такой подход, как описан у Вас, то можно переделать на такое:
    var n=2;
    
    function add_surgeon(){
        var id = 'surgeon_' + n;
        document.getElementById('surgeon').innerHTML+='<div id="' + id + '"><input style="width: 100%" name="surgeon[]" type="text" /></div>';
        n++;
    }
    
    function remove_surgeon(){
        var id = 'surgeon_' + (n - 1);
        document.getElementById(id).remove();
        --n;
    }

    Обёртка в div нужна для того, что бы убрать зависимость от
    который тоже придётся убирать.
    В свою очередь хочу указать, что += является укороченным вариантом для конкатенации строк, и обратного (удаления) не предусмотрено.
    Ответ написан
    Комментировать