Я работаю на социальном сайте. При первой загрузке он извлекает все сообщения, каждый с двумя комментариями max. Если в комментариях больше двух , прикрепите к нему кнопку More comment
, если щелкнуть мышью, отобразится все комментарии и замените кнопку Less comment
.AJAX в AJAX не работает правильно
Это всего лишь небольшая история о том, как это работает. Я хочу, чтобы всякий раз, когда был сделан комментарий, он должен быть добавлен к существующим и отображаться мгновенно через AJAX. Он делает это, но каждый из повторного комментариев 3 раза, когда вы перезагрузите страницу, все в порядке ...
<div class = 'post_updates'>
<div class = 'feeds'>
<div class = 'commentdiv'>
<textarea autocomplete = 'off' class='commenttext form-control' rows = '1'
placeholder='Have your say...'></textarea>
<button class='comment btn btn-xs btn-primary onespacedown' value = '7'
type='submit'>Comment</button>
</div>
</div>
</div>
JQuery AJAX код:
$('.feeds').on('click', '.comment', function() {
var $this = $(this);
var post_comment = $this.parents('.feeds').find('.commenttext').val();
var post_id = $(this).val();
var user_id = $(".user_id").text();
var request = $.ajax({
url: "insert.php",
type: "POST",
data: { post : post_id , user : user_id, comment: post_comment },
dataType: "html"
});
request.done(function(msg) {
$pc = $this.parents('.feeds').find('.per_comment');
//fetch comments and display
var request = $.ajax({
url: "comments.php",
type: "POST",
data: {
post: post_id,
user: user_id
},
dataType: "html"
});
request.done(function (msg) {
$pc.html(msg).data('loaded', true);
$this.replaceWith("<button class='lesscomments btn-block pullcomments' value='' name = 'more' type='submit'>Less comments</button>");
$this.parents('.feeds').find('.commenttext').val('');
});
});
})
Заранее спасибо.
@Tats_innit: [jQuery.ajax обработки продолжают ответов: «успех:» против «.done»] (http://stackoverflow.com/q/8840257/1438393) –
@Tats_innit 'success' - это то же самое, что' done' ... – Yax
Согласовано @AmalMurali Я пропустил второй звонок: http://stackoverflow.com/questions/8847829/what-is-difference-between-success -and-done-method-of-ajax –