【发布时间】:2012-01-17 23:24:28
【问题描述】:
我有一个在 Sinatra 上运行的小型网站,它通过 ajax 在 xhr 请求上更新内容。
javascript
function get_shows() {
$.ajax({
type: 'GET',
dataType: 'HTML',
url: '/update/',
success: function(data) {
$('#show_list').fadeOut('fast', function(){
$(this).html(data).fadeIn('fast');
});
},
error:function(data){console.log(data.statusText)}
});
}
红宝石
get '/update/' do
if request.xhr?
erb :index_show_list, :layout => false
else
erb :index
end
end
我遇到的问题是当用户通过 ajax 更新内容时,该页面的浏览器缓存更新并且只显示获取的 sn-p,并且所有 head 和 body 标记都消失了。页面继续呈现正常,直到您离开页面然后通过后退按钮返回,在这种情况下,显示的只是 html sn-p 没有页面的其余部分。
【问题讨论】: