Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: подскажите как удалить div
 
 автор: zorg84   (29.08.2012 в 23:19)   письмо автору
 
 

подскажите как удалить div

есть html
<div id="divResult" style=" color:red;">

<div id="box_0"></div>
<div id="clear_0" class="clear_coment"/></div>

<div id="box_1"></div>
<div id="clear_1" class="clear_coment"/></div>

<div id="box_2"></div>
<div id="clear_2" class="clear_coment"/></div>
</div>


в дивах box_... есть вложение с дивами и кнопкой удалить
при нажатии по которой удаляется див в котором кнопка.
див box удалось удалить а див clear_... не получается
пробовал через .nextSibling не получилось

код javascript
доступ к диву box

    /*Удалени после нажатия diva (box)*/
                var del= th.parentNode.parentNode.parentNode.parentNode.parentNode.parentNode; 
                del.parentNode.removeChild(del); 

одним словом как удалить
<div id="box_....">
<div id="clea_..."> при клике по кнопки удалить

  Ответить  
 
 автор: confirm   (29.08.2012 в 23:46)   письмо автору
 
   для: zorg84   (29.08.2012 в 23:19)
 

Так как имена атрибутов id всех ваших элементов схожи и отличаются только нумерацией, то лучше вместо многочисленных parentNode обращаться к элементам по их id. Если кнопка удаления будет иметь номер как и у родителя, то:
removeChild(document.getElementById('box_'+номер_полученный_от_кнопки)) 
Соответственно также обращаться к другим элементам.

  Ответить  
 
 автор: zorg84   (30.08.2012 в 00:22)   письмо автору
 
   для: confirm   (29.08.2012 в 23:46)
 

не пойму всё сделал как надо не удаляется хотя в
 removeChild(document.getElementById('box_'+chislo));

число дива точно попадает проверял через алерт

  Ответить  
 
 автор: ЯСА   (30.08.2012 в 00:48)   письмо автору
 
   для: zorg84   (30.08.2012 в 00:22)
 

document.getElementById ('box_' + chislo).parentNode.removeChild (document.getElementById ('box_' + chislo));

  Ответить  
 
 автор: zorg84   (30.08.2012 в 00:57)   письмо автору
 
   для: ЯСА   (30.08.2012 в 00:48)
 

Большое спасибо очень помогли. работает !!!!

  Ответить  
 
 автор: confirm   (30.08.2012 в 01:02)   письмо автору
 
   для: zorg84   (30.08.2012 в 00:22)
 

Во-первых, метод removeChild() должен вызываться относительно родительского элемента. Имя метода даже на это указывает - Child с английского означает ребенок, то есть в контексте html метод обращается к дочернему элементу некоего родителя. А что вы там делаете, у кого удаляете...
Если ваши боксы принадлежат телу документа, то должно быть так:
<head>
<script>
function del(n) {
  document.body.removeChild(document.getElementById('box_'+n));  
  document.body.removeChild(document.getElementById('clear_'+n));  
}
</script>
</head>

<body>
<div id="box_0">
  <input type="button" id="0" value="Del" onclick="del(this.id)" />
</div> 
<div id="clear_0">Text 0</div> 
<div id="box_1">
  <input type="button" id="1" value="Del" onclick="del(this.id)" />
</div> 
<div id="clear_1">Text 1</div> 
<div id="box_2">
  <input type="button" id="2" value="Del" onclick="del(this.id)" />
</div> 
<div id="clear_2">Text 2</div>
</body>
Если они принадлежат другому родителю, то значит вместо document.body укажите этого родителя.

PS. А что у вас делает слеш этот <div id="clear_0" class="clear_coment"/></div>, это с кого мануала вы такое почерпнули?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования