第一次请求后ajaxSubmit没有重新加载页面(在CakePHP中)

时间:2011-02-23 16:17:02

标签: cakephp jquery

我正在创建一个具有页面编辑部分的CMS。我正在尝试创建一个预览功能。它在第一次尝试时工作正常,但如果您再更改一些文本并再次预览,则预览是旧版本。它看起来也很快。好像ajaxSubmit函数不会重新加载页面。

我试图通过每次更改网址来解决这个问题(通过添加时间戳到最后),但这没有任何区别。我正在使用jquery,cakePHP和fck编辑器。

这就是我所拥有的:

<script type="text/javascript">
$('#page_modal').jqm();
$('#preview_btn').click(function(e){
  // Get current page content from fck iframe
  var oEditor = FCKeditorAPI.GetInstance('PageContent');
  var newcontent = oEditor.GetData();
  $('#PageContent').html(newcontent);

  // Submit form via Ajax
  var d=new Date();
  var t=d.getTime();
  var thisurl = '/admin/pages/preview/' + t.toString();

  $('#ajaxForm').ajaxSubmit({
   url: thisurl,
   error: function(XMLHttpRequest, textStatus, errorThrown){                      
    alert(textStatus);
   },
   success: function(responseText){
    $('#page_modal').jqmShow().find('#page_modal_content').html(responseText);
   }
  });
  e.preventDefault(); 
 });
</script>

正如我所说,它第一次工作正常,但随后的调用内容不会更新。任何人都可以提出任何建议吗?

1 个答案:

答案 0 :(得分:0)

尝试标记没有缓存的视图(/ admin / pages / preview)。在实际视图中:

<cake:nocache>

 // your view content here

</cake:nocache>

可能是视图正在被蛋糕缓存,因此不会随后调用更新。

http://book.cakephp.org/view/347/Marking-Non-Cached-Content-in-Views