您好我正在使用复选框和按钮开发数据删除页面。删除后,我想显示交易成功与否的消息。大多数情况下消息显示正确,但有时页面重新加载不会发生,并且在手动重新加载之前消息不会显示。 现在,如果不确定页面是否重新加载,是否还有其他方法可以显示来自控制器的消息? 这是代码:
(index.ctp)
<script type="text/javascript">
$(document).ready( function() {
$("#btn").click(function() {
var ids = '';
$('input[type="checkbox"]').each(function(){
if(this.checked){
ids = ids.concat(this.id).concat(',');
}else{
jAlert("Please choose items to delete");
}
});
if (ids != ''){
jConfirm('Delete?', 'Confirm',function(r){
if(r==true){
ht = $.ajax({
url: 'items/delete/'.concat(ids),
type: "POST",
contentType: "application/json; charset=utf-8",
});
location.reload(true);
}
});
}
});
});
</script>
(controller.php #function delete())
$this->Session->setFlash(__('Deleted!, true));
$this->redirect(array('action'=>'index'));
答案 0 :(得分:1)
CakePHP的会话闪存通常非常可靠。
也许您的浏览器无法使用location.reload(true)
进行可靠的刷新。尝试window.location = window.location.href + "?nocache=" + new Date().getTime()
手动清除缓存,看看是否有帮助。