如果选中此复选框,我想在操作中发布复选框并打印警告,这是我的代码:
视图:
echo CHtml::checkBox('hi');
echo CHtml::button('Search', array('onclick' => 'js:document.location.href="index"'));
控制器:
public function actionIndex()
{
$model = Jobs::model()->findAll();
$model2 = Tags::model()->findAll();
if(isset($_POST['hi']))
echo "<script>alert('hello');</script>";
$this->render('index', array('model'=>$model, 'model2'=>$model2));
}
当我选中复选框并单击按钮时,没有发生任何事情,我的代码中的错误在哪里?
答案 0 :(得分:2)
您只需将页面重定向到actionIndex
即可。您必须SUBMIT
您的表单,而不是重定向。看看:
echo CHtml::beginForm(Yii::app()->createUrl('index'), 'POST');
echo CHtml::checkBox('hi');
echo CHtml::submitButton('Search');
echo CHtml::endForm();
如果您尝试:
CVarDumper::dump($_POST,56789,true);
提交表单后,您可以看到POST
值。
或者您可以通过按钮中的java脚本执行此操作:
//if you have created a form
echo CHtml::button('Search', array('onclick' => 'this.submit();'));