如何在 yii2 php 中添加微调器/加载器 [英] How to add spinner/loader in yii2 php

查看:26
本文介绍了如何在 yii2 php 中添加微调器/加载器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在我的一个表单中添加一个微调器/加载器.场景很简单:当我点击 create 按钮时,它会显示一个微调器/加载器.点击创建按钮后,将调用网络服务,因此微调器/加载器将从调用开始到调用结束显示.

下面是我的控制器:

$m = MetersInventoryStore::findOne($_REQUEST['selected_meters']);$msn = $m->meter_serial;//保存当前选择的仪表序号$date_time = str_replace(' ', 'T', date('Y-m-d H:i:s'));//当前日期时间$api_url = 'http://xx.xxx.xxx.xxx:7000/api/meters/GetByMsn/' .$msn .'/' .$date_time;//我的基本网址$curl = curl_init($api_url);curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);curl_setopt($curl, CURLOPT_TIMEOUT, 1000);curl_setopt($curl, CURLOPT_HTTPHEADER, array('Authorization:key'));$curl_response = curl_exec($curl);$json = json_decode($curl_response);$meter_alive = $json->data->Response;....//我保存数据的其他代码....return $this->render('create', ['model' => $model,]);

提交按钮如下:

<?= Html::submitButton($model->isNewRecord ?'验证通信':'更新', ['id'=>'spin','name'=>'create','class' => $model->isNewRecord ? 'btn btn-success' : 'btn btn-success']) ?>

如上所述,当我按下 Verify Communication 按钮时,会调用 Web 服务,在此期间我想显示一个微调器/加载器.

为了创建/显示微调器/加载器,我搜索了很多文章.

  1. 显示加载
  2. Kartik Spinner
  3. 提交微调
  4. Yii2 模型加载器
  5. Yii2 Jquery 加载

但以上文章都没有提到完整的实现细节.虽然我已经尝试了文章中提到的每一步.

任何帮助将不胜感激.

解决方案

为什么不把加载器放在每个页面加载上,而不是放在提交按钮上.这可以通过更改主布局来实现.