2016-04-23 2 views
0

Принести сообщения из базы данных с PHP во время цикла, Вот, например, из HTML код->Как выбрать уникальный идентификатор Div и удалить его

<div id="1"> content <button class="btn-primary" data-id="1">button</button></div> 
<div id="2">content 2 <button class="btn-primary" data-id="2">button</button></div> 

если кто-то нажмите на первую кнопку затем Div с идентификатором = 1 должны быть удалены

Вот код Jquery

$(function() { 
    $("body").on("click", ".btn-primary", function() { 
     var ids = $(this).data('id'); // get data-id atrribute 
     var elements = this; 
     $('#id').remove(); // How can i remove the div by showing each id here 
     $.ajax({ 
      type: "POST", 
      url: "https://www.example.com/ajax, 
      data: "ids=" + ids, 
      success: function(data) { 
       setTimeout(function() { 
        $('.conner').append(data).fadeIn('slow'); 
       }, 2000); 
      } 
     }); 
    }); 
}); 

Как получить идентификатор Div динамически и удалить DIV по щелчку

+5

'$ ('#' + идентификаторами) .remove();' ?? –

ответ

4

Если только data-id имеет несколько значений, вы можете:

var ids = $(this).data('id'); // get data-id atrribute 
$('#' + ids).remove(); 

Более простой способ - это удалить кнопку родителя:

$(this).parent().remove(); 
+0

Я хочу удалить div с помощью div id = "" not data-id –

1

Либо использовать переменную как:

$('#'+ids).remove(); 

Или вы можете просто перейдите по ссылке

$(this).parent().remove(); 
+0

Я думаю, что второй вариант - лучший. –

+0

Но когда разметка меняется - это уже нет. –

0

иногда случился, что если идентификатор элемента содержит только номер, и мы пытаемся получить доступ к этому элементу с этим идентификатором его созданием проблемы SOE лучше использовать

$(this).parent().remove();

1

Если ваш контейнер всегда div вы не необходимо использовать идентификаторы, которые вы могли бы использовать:

$(this).closest('div').remove(); 

Надеюсь, это поможет.

0

Если DIV, который вы хотите удалить немедленно родителем кнопки, чем вы можете использовать,

$(this).parent().remove(); 

Если у вас есть иерархия, чем вы можете добавить .parent() несколько раз, как

$(this).parent().parent().parent().remove(); 
0

Является ли это что-то как это ??

Codepen example

$(".button1").click(function() { 
    $(this).closest('.div1').fadeOut(500); 
}); 

HTML

<div class="div1">content1 
    <button class="btn-primary button1">button for div 1</button> 
</div> 
<div class="div1">content2 
    <button class="btn-primary button1">button for div 2</button> 
</div> 
<div class="div1">content3 
    <button class="btn-primary button1">button for div 3</button> 
</div> 
<div class="div1">content4 
    <button class="btn-primary button1">button for div 4</button> 
</div> 
<div class="div1">content5 
    <button class="btn-primary button1">button for div 5</button> 
</div> 
Смежные вопросы