2012-06-22 2 views
0

Я хочу добавить неограниченное количество элементов HTML с данными, указанными в качестве комментариев. Это мой Аякс:Как добавить неограниченное количество элементов html через функцию успеха ajax?

function ajaxsubmit(){ 
    $.ajax({ 
     url: "/update", 
     type: "POST", 
     dataType: "html" 
    }).success(function(data) { 
      $('#result').html(data); 
     }); 
    } 

и мой HTML часть:

<div class="post" id="result"></div> 

это моя серверная функция:

public static Result ajaxupdate(){ 
    String done = "test"; 
    return ok(done).as("text/html"); 
} 

Эта функция добавление только один раз, и если я нажимаю для Второй раз, это не добавление. Это потому, что я должен иметь разные идентификаторы каждый раз? Как это возможно (как в StackOverflow, как несколько комментариев работа!)

Спасибо, заранее ..

ответ

1

При использовании $('#result').html(data); содержание #result заменяется новыми данными. Чтобы добавить новые данные в result, используйте

$('#result').append(data); 
+0

О да, это то, что я хочу. простой, но я был просто потерян в наводнениях мысли ..: D. отличный человек, большое спасибо! – doniyor

1

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

В конце концов, если бы у вас была полная система комментариев, вы, вероятно, захотите вернуть JSON из своего вызова ajax . Этот JSON может быть примерно таким:

{ «ID»: «12345», «Текст»: «Текст для комментария», «пользователь»: «Энди»}

И тогда вы могли бы разобрать это и добавить его на страницу с «12345 'как содержащий элементы ID или что-то еще!

Несоблюдение этого требования, в течение которого вы всегда можете сохранить идентификатор, используя функцию jQuerys data(). Это сохранит идентификатор для элемента в кеше jQuerys. Таким образом, это не обязательно должно быть уникальным.

В любом случае, я уверен, что уникальный идентификатор элемента будет, почему он не отображается.

Update

Duh, конечно, Карстен абсолютно прав, но мы надеемся, что может быть много полезной информации в этой статье для вас еще! :)

+0

ой хорошо, я вижу. это круто, что вы имеете в виду, я сейчас сделаю снимок. – doniyor

+1

Я ошибался в отношении идентификатора элемента, потому что он не показывает между прочим (см. мое обновление), Карстен был прав, когда они сказали, что это из-за функции загрузки, перезаписывающей содержимое с помощью новый результат ajax! – Andy

+0

Да, конечно. что информация об рендеринге json и выполнении задания также велика, потому что это решит другие проблемы, связанные с получением дополнительной информации через обратный вызов .. в любом случае, спасибо спасибо! :) – doniyor

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