Javascript-форум (https://javascript.ru/forum/)
-   Events/DOM/Window (https://javascript.ru/forum/events/)
-   -   Создание и удаление элементов (https://javascript.ru/forum/events/76114-sozdanie-i-udalenie-ehlementov.html)

kolya200598 06.12.2018 14:03

Создание и удаление элементов
 
Здравствуйте, помогите, пожалуйста, с такой задачей. Я хочу создавать новые селекты и удалять их. Создавать удается и удалять созданные в html, а вот удалять созданные скриптом не получается.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <h1>Каталог</h1>
    
    <form id="form1"  action="">
        <select name="t1" id="" onclick="">
            <option value="">BMW</option>
            <option value="">VW</option>
            <option value="">Audi</option>
            <option value="">Mazda</option>

        </select>
        <select name="" id=""></select>
        <button id="add">Добавить</button>
        <label for=""></label>
        <br>
        <br>
        <input id="find" type="button" value="Найти">
        
    </form>
    
    <script src="script.js"></script>
</body>
</html>

var cars = ["Audi","BMW","Lada","Mercedes","VW"];
        
        document.getElementById('add').onclick = fun1;

        function fun1(){
            var newselect = document.createElement('select');
            document.getElementById('form1').appendChild(newselect);
            i = Date.now();
            newselect.id = "newselect" + i;
            id = newselect.id;
            for(i=0;i<cars.length;i++){
                fun2(id);
            }
            return false;
        }

        function fun2(id){
            var newoption = document.createElement('option');
            document.getElementById(id).appendChild(newoption);
            newoption.innerHTML = cars[i];
        }

        var elems = document.getElementsByTagName('select');
            for (var i = 0; i < elems.length; i++)
            elems[i].addEventListener('click', fun3);

        //var del = document.getElementById('find').addEventListener('click',);

        function fun3(){
            this.remove();
        }

рони 06.12.2018 15:14

kolya200598,
в строку 7 добавить удаление
newselect.addEventListener('click', fun3);

kolya200598 06.12.2018 15:26

Спасибо огромное!


Часовой пояс GMT +3, время: 22:41.