Как я могу обновить DOM после вызова Ajax (jQuery)?

Как я могу обновить DOM с новым элементом записи, добавленным после вызова?

должен ли я вернуть недавно вставленное содержимое записи db при обратном вызове, а затем добавить с помощью jquery?

пожалуйста, совет, если недостаточно данных, чтобы ответить на вопрос.

$(function(){

        $('#postentry').submit(function() {
          var tyu = $('#tittle_ent').val();
          if(tyu.length <= 2)
            {alert('Enter More Text!'); return false;}else
            {
                $.post(  
                 "posts_in.php",  
                 $("#postentry").serialize(),  
                    function(data){  
                        //alert(data); 
                    }  
                );  
                return false;
            }
        });

    });

каждая запись выглядит так:

<div id="post349" class="myclass">
This is some text.    
</div>

4 ответов


Я хотел бы использовать $.ajax() вместо $.post():

$.ajax({
    type:'post',
    url: 'posts_in.php',
    data: $("#postentry").serialize(),
    success:function(data){
        var id='post349';
        $('<div></div>').attr('id',id).addClass('myclass').html(data).appendTo('#records_wrapper');
    }
});

быстрое демо, как див будет добавлена и заселена: http://jsfiddle.net/AlienWebguy/zuPA2/1/


вы можете либо вернуть полную запись в окружающих div из php или вы можете просто получить недавно вставленный идентификатор и построить запись в javascript.


$.post(  
     "posts_in.php",  
     $("#postentry").serialize(),  
        function(data){  
            $('#myDivOnThePage').append(data);
        }  
 );  

Если данные содержат новую запись, так что да, разберите ее и добавьте, где и как вы хотите.

путем создания нового jsfiddle.net на примере, я могу помочь вам немного больше...