Как предотвратить множественный AJAX? - PullRequest
0 голосов
/ 13 февраля 2019

Когда я нажимаю кнопку удаления, вызывается также кнопка ajax of detail.Так как же предотвратить множественный AJAX?

<div id="detail_message" data-id="{{ $value->message->id }}">
  <i class="fa fa-trash icon col-6" aria-hidden="true"style="font-size: 20px; color: #5b5b5b" id="delete_message" data-id="{{ $value->message->id }}"></i>
</div>

$('#delete_message').click(function(event){
    event.preventDefault();
    var id = $(this).attr('data-id');

    $.ajax({
      url: '{{ url("message/delete_message") }}/'+id,
      type: 'GET',
      success: function(data){
        alert('Message Deleted Successfully');
      }
    })      
  });

 $('#detail_message').click(function(event){
    event.preventDefault();
    var id = $(this).attr('data-id');

    $.ajax({
      url: '{{ url("message/detail_message") }}/'+id,
      type: 'GET',
      success: function(data){
        $('#content-message').html(data);
      }
    })      
  });

1 Ответ

0 голосов
/ 13 февраля 2019

Добавить event.stopPropagation () в событие щелчка на сообщении удаления.

$('#delete_message').click(function(event){
    event.preventDefault();
    event.stopPropagation(); 
    var id = $(this).attr('data-id');

    $.ajax({
      url: '{{ url("message/delete_message") }}/'+id,
      type: 'GET',
      success: function(data){
        alert('Message Deleted Successfully');
      }
    })      
  });

Объяснение: При нажатии кнопки удаления сообщения событие срабатывает и продолжает пузыриться до всех его родительских подразделений.event.stopPropagation () останавливает всплывание событий, и событие родительского деления не запускается при щелчке дочернего элемента.

...