我成功地将Ajax与Yii框架一起使用。 我在postPartial列表中的renderPartial。
我想要做的是当用户点击表单中的ajax按钮时阻止刷新。
在表单的开头,我使用以下代码来激活ajax
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'post-form',
'enableAjaxValidation'=>true,
'enableClientValidation'=>true,
)); ?>
在页面的末尾我只有ajaxbutton
<?php echo CHtml::ajaxSubmitButton('Save'); ?>
在动作控制器中我有以下
if(isset($_POST['ajax']) && $_POST['ajax']==='comment-form')
{
echo CActiveForm::validate($comment);
Yii::app()->end();
}
当我点击ajax按钮时,它会保存数据但刷新页面,因此它会显示表单。 我想要的是留在页面上。
有人帮忙吗? 提前谢谢。
答案 0 :(得分:2)
您可以阻止页面刷新,或者询问用户是否确定要通过此代码离开页面:
window.onbeforeunload = function() {
return "Dude, are you sure you want to leave? Think of the kittens!";
}
您可以查看此问题:Prevent any form of page refresh using jQuery/Javascript
答案 1 :(得分:0)
我认为你有一些像$this->redirect( ... ));
$model->save()
后的控制器中,对吧?
所以不要重定向