Модераторы: Sardar, Aliance
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> удаление елемента из DOM 
:(
    Опции темы
lumentek
Дата 27.7.2010, 01:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



<table>
        <tr id="t1">
         <td>...</td>
         <td>...</td>
         <td>...</td>
         <td>...</td>
        </tr>   
         <tr id="t2">
         <td>...</td>
         <td>...</td>
         <td>...</td>
         <td>...</td>
        </tr>

</table>

Как удалить элемент с id=t2, то есть  чтобы строка полностью удалилась?
PM MAIL   Вверх
EmilRegis
Дата 27.7.2010, 05:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 306
Регистрация: 21.9.2007

Репутация: нет
Всего: 4



Код

var tbd = d.getElementById(tableId).getElementsByTagName('TBODY')[0];
tbd.removeChild(d.getElementById('t1'));

PM MAIL   Вверх
lumentek
Дата 27.7.2010, 10:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



Это я знаю, меня интересует как это обстоит на jQuery?
PM MAIL   Вверх
нуп
Дата 27.7.2010, 10:52 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ботокодер
**


Профиль
Группа: Участник
Сообщений: 987
Регистрация: 22.6.2009
Где: Кременчуг

Репутация: 8
Всего: 33



remove();
PM MAIL   Вверх
ex3c
Дата 4.8.2010, 19:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 32
Регистрация: 22.5.2010

Репутация: 1
Всего: 1



EmilRegis, вообще-то для pure-js есть .deleteRow()

lumentek
Код

$('#t2').remove();


Это сообщение отредактировал(а) ex3c - 4.8.2010, 19:43
PM MAIL   Вверх
lumentek
Дата 8.8.2010, 21:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



еще такой вопрос.
Например, уменя таблица сгенерирована яваскриптом. и когда я пытаюсь удалить только что сгенерированную строку функцией remove() ТО ничего не происходит. зато если перезугрузить страницу, то все работает. в чем может быть причина?
PM MAIL   Вверх
CruorVult
Дата 8.8.2010, 22:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 1
Всего: 28



возможно remove() выполняется до отрисовки таблицы? 
код можно посмотреть.
PM MAIL Skype   Вверх
lumentek
Дата 8.8.2010, 23:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



function delete_person_contact(value)
    {
       $(document).ready(function(){
       var id = "#"+value;
       $.post("/php/delete_contact.php",{str: id},function (data){
        $(""+id+"").remove();
         });
     });

Вообщем если страница загружена, то нужный контент удаляется. А вот если  контен динамически образуется скриптом после того как страница загружена, то он не удаляется.
PM MAIL   Вверх
CruorVult
Дата 9.8.2010, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 1
Всего: 28



когда выполняется delete_person_contact?
контент точно сформировался до вызова delete_person_contact?
 $(""+id+"").html(); что показывает
PM MAIL Skype   Вверх
lumentek
Дата 9.8.2010, 00:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



ничего не показывает.
а вот  alert(id); показывает Id контакта, который нужно удалить.

еще заметил странную вещь. если четыре раза кликнуть то контент все-такиудаляется.

а вот как я вызываю обработчик на всякий случай
<img onclick="delete_person_contact(getElementById('pid_<?=$person_contact['id_person_contact'];?>').id);"
PM MAIL   Вверх
CruorVult
Дата 9.8.2010, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 1
Всего: 28



Код

delete_person_contact(getElementById('pid_<?=$person_contact['id_person_contact'];?>').id)

о ужос smile 
можно просто
Код

delete_person_contact('pid_<?=$person_contact['id_person_contact'];?>')


после асинхронного ответа:
Код

$.post("/php/delete_contact.php",{str: id},function (data){
        $(""+id+"").remove();
         });

переменная id не существет. Возвращайте с сервера person_id а потом формируйте id dom-елемента:
Код

$.post("/php/delete_contact.php",{str: id},function (data){
        $("#pid_"+data.person_id+"").remove();
         });

PM MAIL Skype   Вверх
lumentek
Дата 9.8.2010, 12:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



спасибо. а как должен сформироваться контент  чтобы в переменной data.person_id хранилось нужное значение?
PM MAIL   Вверх
lumentek
Дата 9.8.2010, 13:33 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



Код

function delete_person_contact(value)
    {
       $(document).ready(function(){
       var id = "#"+value;
       $.post("/php/delete_contact.php",{str: id},function (data){
      //  alert(id);
        $("#pid_"+data+"").remove();
        alert(data);

         });
     });
    }

дата возвращает нужный ид. все равно та же фигня. 

PM MAIL   Вверх
CruorVult
Дата 9.8.2010, 13:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 868
Регистрация: 24.9.2008
Где: г.Киев, Украина

Репутация: 1
Всего: 28



проблема может заключатся в отсутствии объекта $("#pid_"+data+""). 
Просмотрите DOM(в Opera - Dragonfly, Mozilla - Firebug), и убедитесь что элемент существует.
PM MAIL Skype   Вверх
lumentek
Дата 9.8.2010, 14:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 180
Регистрация: 19.11.2009

Репутация: нет
Всего: нет



Вообще страности. проверил — объект создается. 

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | JavaScript: Применение библиотек | Следующая тема »


 




[ Время генерации скрипта: 0.0846 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.