Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 11.09.2018, 22:03
Аспирант
Отправить личное сообщение для Menshakovich Посмотреть профиль Найти все сообщения от Menshakovich
 
Регистрация: 11.06.2018
Сообщений: 31

Удаление определенного контейнера из нескольких
Здравствуйте.Ломаю голову уже который час,но не могу осуществить .У меня есть функция, которая аналогично некоторому контейнеру string (с инпутами и прочими) добавляет такие же контейнеры .Но после этих контейнеров вставляется крестик(т.е. новые контейнеры могут быть удалены пользователем) как это осуществить? Я имею в виду,чтобы удалялась строка нажатого крестика. вот кодики.

<div id="here"><div class="string">
       <input name="one">
        <input name="two">
         </div></div>
       
       <span  id="add">ADD</span>


$('#add').click(function()
      {
        $('#here').append('<div class="string"><input name="one"><input name="two"></div><div name="delete" >&times</div>');    
                    
    $('div [name="delete"]').click(function() {
        
    //  .............. 
    
})  ;
            
      });
Ответить с цитированием
  #2 (permalink)  
Старый 11.09.2018, 22:14
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<script src="https://code.jquery.com/jquery-3.3.1.min.js"></script>
</head>
<body>
	<div id="here"><div class="string">
		<input name="one">
		<input name="two">
	</div></div>
	<span  id="add">ADD</span>
	<script>
		$('#add').click(function(){
			$('#here').append('<div class="string"><input name="one"><input name="two"><div onclick="$(this).parent().remove();">&times</div></div>');    
		});
	</script>
</body>
</html>

крестик внутрь

Последний раз редактировалось j0hnik, 12.09.2018 в 17:43.
Ответить с цитированием
  #3 (permalink)  
Старый 11.09.2018, 22:19
Аспирант
Отправить личное сообщение для Menshakovich Посмотреть профиль Найти все сообщения от Menshakovich
 
Регистрация: 11.06.2018
Сообщений: 31

Спасибо огромнейшее!!!
Ответить с цитированием
  #4 (permalink)  
Старый 11.09.2018, 22:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Menshakovich,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>

  <script>
$(function() {
    $("#add").click(function() {
        var block = $('<div class="string"><input name="one"><input name="two"></div>').appendTo("#here");
        var del = $('<div name="delete" >&times</div>').appendTo("#here");
        del.click(function() {
            del.add(block).remove()
        })
    })
});
  </script>
</head>

<body>
<div id="here"><div class="string">
       <input name="one">
        <input name="two">
         </div></div>

       <span  id="add">ADD</span>

</body>
</html>
Ответить с цитированием
  #5 (permalink)  
Старый 11.09.2018, 22:28
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Сообщение от j0hnik
$('div[name="delete"]').click(function(){ this.parentNode.remove(); });
жуть!!! сто тысяч обработчиков клика, плюс не работает в ie
Ответить с цитированием
  #6 (permalink)  
Старый 12.09.2018, 00:05
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

рони,
Я лишь добавил this.parentNode.remove();
для ie $(this).parent().remove();
Ответить с цитированием
  #7 (permalink)  
Старый 12.09.2018, 00:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Сообщение от j0hnik
для ie $(this).parent().remove();
ок!
а
Сообщение от рони
сто тысяч обработчиков клика
убрать?
Ответить с цитированием
  #8 (permalink)  
Старый 12.09.2018, 00:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

j0hnik,
что бы получить более 100000 обработчиков клика, достаточно нажать кнопку add 447 раз, в вашем варианте.

Последний раз редактировалось рони, 12.09.2018 в 00:47.
Ответить с цитированием
  #9 (permalink)  
Старый 12.09.2018, 01:50
Аватар для j0hnik
Профессор
Отправить личное сообщение для j0hnik Посмотреть профиль Найти все сообщения от j0hnik
 
Регистрация: 01.12.2016
Сообщений: 3,650

рони,
сумма арифметической прогрессии, знаю
Ответить с цитированием
  #10 (permalink)  
Старый 12.09.2018, 09:12
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,064

Сообщение от j0hnik
знаю
если знаешь, зачем так делаешь? исправь селектор в строке 17.
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление нескольких объектов из массива konstantin-921 Events/DOM/Window 4 10.03.2018 18:16
Удаление содержимого контейнера fi.adm Элементы интерфейса 6 19.07.2014 20:42
Удаление нескольких элементов bgraf Элементы интерфейса 3 07.06.2013 15:38
удаление строки до определённого символа Vampir3 Общие вопросы Javascript 2 04.09.2012 22:46
проверка наличия определенного класса из нескольких shaltay jQuery 1 20.10.2011 20:14