2011-03-30 71 views
0

我使用AJAX在我的页面“项目”动态添加/删除项目。 但是,当我要进入下一页,然后返回到我的“项目”中时,会显示此集合 ,因为它是在更改之前显示的。与动态添加项目的Div

F5-Refresh之后有效。

如何避免它? 所有的都是合适的保存,但它看起来像缓存或如此。

代码示例:

<script> 

    delete_item_from_list = function (itemIdGiven, listIdGiven) { 
     $.ajax({ 
      url: "@{Lists.deleteByIndexItem()}", 
      method: 'post', 
      async: true, 
        dataType: 'html', 
      data: { 
       itemId : itemIdGiven, 
       listId : listIdGiven 
      }, 
      success: function(data) { 
       $(".items").html(data); 
      }, 
      error: function() { 
       console.log ("It's a TRAP!"); 
      } 

     }); 
    }; 

</script> 
+0

请提供更多详细信息和您使用的代码。 – Alp 2011-03-30 09:38:05

+1

什么是“AJAH”? – 2011-03-30 09:38:59

+0

在删除/添加的代码中,我发送更改请求到收集并作为响应将所有收集作为html。 AJAX - >作为回应你有XML ** AJAH ** - >作为回应,你有Html – sdf 2011-03-30 09:40:00

回答

0

这是一个问题,甚至还可以直接在StackOverflow的网站上:

刚刚尝试添加注释作为第几的人,然后你会看到注释添加,如果你点击你的名字查看你的个人资料,然后点击“返回”,你将看不到你添加的评论。

处理此问题的一种方法是添加AJAX历史记录和书签,这样,当AJAX成功时,URL实际上已更改并且可收藏(和历史记录)。当你点击一个新的页面,然后点击“返回”,该网址就会变成旧的,并且AJAX书签和历史记录的机制应该会为你填充你的内容。

+0

*这样,当AJAX成功时,URL实际上已经改变了* 看起来非常有趣,就像在成功后向当前URL添加一些参数一样? – sdf 2011-03-30 09:57:51

+0

@sdf:是的,通常通过哈希来实现。看到[这里](http://stackoverflow.com/questions/3849758/how-does-facebook-rewrite-the-source-url-of-a-page-in-the-browser-address-bar)的一些建议关于如何去做。 – 2011-03-30 10:34:27

+0

thx!用这个插件完成 http://ti.y1.ru/jquery/router/ – sdf 2011-03-30 13:25:18