2010-05-04 3 views
1

У меня есть сайт с темами, которые проголосовали (вверх или вниз), и подсчет голосов отображается рядом с каждым потоком.jQuery - Ajax опубликовать результат в html, отображающемся в неправильном положении

Голоса вверх и вниз процесс делается с помощью JQuery/Ajax, и используя что-то вроде этого:

$.ajax({ 
    url: 'vote.php', 
    success: function(data) { 
    $('.result').html(data); 

    } 
}); 

HTML, подсчета голосов обновляется (.result является класс DIV, что имеет номер подсчета голосов)

Кроме того, нити сортируются сначала по счету по убыванию, а затем по алфавиту.

У меня возникла проблема с обновлением счетчика HTML в ajax в реальном времени, у меня есть подозрение, что проблема связана с тем, что порядок потоков меняется, когда подсчет голосов обновляется, но я не уверен.

Я знаю, что база данных обновляется, и когда я обновляю страницу, она также обновляется правильно, но я не вижу поведение в реальном времени, которое я ожидаю от jQuery/Ajax.

В чем может быть проблема?

ответ

2

$('.result') будет ссылаться все элементы с классом «результат» во всем документе. Вы выборочно назначаете этот класс обновляемому элементу? В этом случае вам нужно показать нам код для этого.

В противном случае, вы, вероятно, хотите посмотреть на доступ к надлежащей контейнер что-то вроде идентификатора, который не зависит от того, как упорядочение элементов изменить

$('#item-' + id).find('.result').html(data); 
+0

это суть проблемы! Я понял это после того, как задал вопрос, но спасибо за правильный ответ в любом случае :) – Sev

0

Попробуйте

$.ajax({ 
    url: 'vote.php', 
    success: function(data) { 
    $('.result').text(data); 

    } 
}); 

Если сервер просто посылает номер, который вы, вероятно, должны быть просто установив текст.

Смежные вопросы