按钮点击yii2
我看到了这个按钮:按钮点击yii2,yii2,Yii2,我看到了这个按钮: 渲染 如何使用特定功能设置调用actionIndex,例如,如果单击按钮1,则使用getSome()调用actionIndex,如下所示: public function actionIndex() { if(isset($_POST['render_button'])) { $data = order::getSome(); } $dataProvider = new ArrayDataProvider([ 'all
渲染
如何使用特定功能设置调用
actionIndex
,例如,如果单击按钮1
,则使用getSome()调用actionIndex
代码>,如下所示:
public function actionIndex()
{
if(isset($_POST['render_button'])) {
$data = order::getSome();
}
$dataProvider = new ArrayDataProvider([
'allModels' => $data,
'sort' => [
],
'pagination' => [
'pageSize' => 50,
],
]);
return $this->render('index',['dataProvider' =>$dataProvider]);
}
您应该为$data
变量设置一个初始值,一个类似null
的值,然后将其传递给$dataProvider
数组,如下所示:
public function actionIndex()
{
$data = null;
if(isset($_POST['render_button'])) {
$data = order::getSome();
}
$dataProvider = new ArrayDataProvider([
'allModels' => $data,
'sort' => [
],
'pagination' => [
'pageSize' => 50,
],
'data' => $data
]);
return $this->render('index',['dataProvider' =>$dataProvider]);
}
<form method="post">
<button type="submit" name="render_button" class='btn btn-block btn-primary' style="width:100px;height:30px;" > Render </button><br>
</form>
现在,在视图中,只要检查$data
变量是否为null
,或者获取触发器并在$data
变量中选择order::getSome()
数据
编辑
没有看到您正在将$data
变量传递给allModels
项,但它是相同的。只要检查视图中的allModels
,只要将其设置为null
或它有一些数据
更新
更新您的视图index.php
,使其具有如下发布表单:
public function actionIndex()
{
$data = null;
if(isset($_POST['render_button'])) {
$data = order::getSome();
}
$dataProvider = new ArrayDataProvider([
'allModels' => $data,
'sort' => [
],
'pagination' => [
'pageSize' => 50,
],
'data' => $data
]);
return $this->render('index',['dataProvider' =>$dataProvider]);
}
<form method="post">
<button type="submit" name="render_button" class='btn btn-block btn-primary' style="width:100px;height:30px;" > Render </button><br>
</form>
渲染
它不处理控制器中的按钮点击。例如,if(isset($\u POST['render\u button']){actionIndex();}
没有刷新页面。您需要有一个表单或使用AJAX发布/获取。您可以使用包含按钮的完整HTML代码进行更新吗?我的视图中只有这个呈现
(index.php)尝试添加一个表单,并将按钮设置为提交类型。请检查我的最新答案。最好使用@stand表格。除非另有指示,否则按钮将始终启动GET
请求