При получении значения атрибута data возникает возникает ошибка из-за значения undefined.
На этом участке кода значение атрибута data верное: url: '/moderator/comment/' + $( this ).data( 'id' ) + '/delete', а здесь и далее уже undefined: alert( "#comment" + $( this ).data( 'id' ) );
$("[id^=comment_delete]").on("click", function() {
$.ajax({
type: 'GET',
url: '/moderator/comment/' + $(this).data('id') + '/delete',
success: function(msg) {
alert("#comment" + $(this).data('id'));
$("#comment" + $(this).data('id')).detach();
}
});
});
#comment_delete {
width: 100px;
background-color: black;
color: white;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="comment100500" class="panel panel-default" data-id="100500">
<div id="comment_delete100500" data-id="100500" class="btn btn-danger" data-href="/moderator/comment/100500/delete"><i class="fa fa-remove"></i>Delete</div>
<p>Комментарий</p>
</div>