jquery刷新div中的内容

时间:2012-09-24 18:26:12

标签: javascript jquery ajax xmlhttprequest

我在HTML页面中有2个div - 在触发事件时需要刷新。 其中一个div,如果display:none,则不会刷新新数据。

是否无法刷新display:none div? 我的JavaScript在下面,

$('#messages_send').live('click', function() {
$.ajax({
    url: base_url + 'ajax/send_message',
    data: {
        username: $('#messages_username').val(),
        message: $('#messages_message').val(),
        saveid: $('#messages_savedid').val(),
    },
    success: function(data) {
        sending_message();

        var x = jQuery.parseJSON(data);

        if(x) {
            if(x.gp_id==80)
            {
                    $('#spn_ucredit').load(base_url + 'ajax/userdata/credits');
                    $('#overlay_credits').load(base_url + 'ajax/userdata/credits');
            }
        }
        //$('#spn_ucredit').html($('#ncd_id').val());
        //tmp_cost = $('#spn_ucredit').html()-$('#ncd_id').val();
        //$('#ncd_id').val($('#ncd_id').val()-tmp_cost);
        //alert(data);
        setTimeout(message_sent, 2000);
        setTimeout(remove_modal_box, 3000);
        setTimeout(message_revert, 3500);
        $("#saved_messages").load(base_url + 'messages #saved_messages > form');
        //setTimeout($("#messages_content").load(base_url + 'messages #messages_content > form'), 1000);
        //$.get(base_url + 'messages #saved_messages > form', null, function(result){ $("#saved_messages").html(result) });
        //$("#messages_content").css("visibility","hidden").show();
        //$.get(base_url + 'messages #messages_content > form', null, function(result){ $("#messages_content").html(result) });
        //$("#messages_content").css("visibility","visible").hide();
    }
});

return false;

});

1 个答案:

答案 0 :(得分:1)

使用.hide()可以对div进行编辑,同时设置display:none使其变得更加困难

  

“匹配的元素将立即隐藏,没有动画。这大致相当于调用.css('display','none'),除了显示属性的值保存在jQuery的数据缓存中,以便显示可以稍后恢复到其初始值。如果元素的显示值为内联,则隐藏并显示,它将再次以内联方式显示。“

因此,如果您能够恢复到之前的显示值很重要,那么最好使用hide(),因为这样可以记住以前的状态。除此之外没有区别。

来自jQuery的.hide() Here

上的资源

此外,还有一些问题 - Here's an example of one