我在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;
});
答案 0 :(得分:1)
使用.hide()可以对div进行编辑,同时设置display:none使其变得更加困难
“匹配的元素将立即隐藏,没有动画。这大致相当于调用.css('display','none'),除了显示属性的值保存在jQuery的数据缓存中,以便显示可以稍后恢复到其初始值。如果元素的显示值为内联,则隐藏并显示,它将再次以内联方式显示。“
因此,如果您能够恢复到之前的显示值很重要,那么最好使用hide(),因为这样可以记住以前的状态。除此之外没有区别。
来自jQuery的.hide()
Here
此外,还有一些问题 - Here's an example of one