<?php $form = ActiveForm::begin([ 'options' => [ 'onsubmit' => "getElementById('dosubmit').disabled=true;return true;" ], 'fieldConfig' => [ 'template' => "<div class='row'><div class='col-sm-2 text-right'>{label}</div><div class='col-sm-10'>{input}\n{hint}\n{error}</div></div>", ], ]); ?> 这段代码没有禁用提交按钮是什么问题?
时间: 2023-05-11 11:04:05 浏览: 46
这段代码没有禁用提交按钮的问题可能是因为在 onsubmit 事件中只是将按钮的 disabled 属性设置为 true,但是没有将按钮的值设置为 disabled,所以提交按钮仍然可以被点击。应该将 onsubmit 事件中的代码改为 getElementById('dosubmit').disabled='disabled';。
相关问题
yii2 中 $form = ActiveForm::begin 中的 onsubmit 如何使用?
在 Yii2 中,$form = ActiveForm::begin() 中的 onsubmit 可以用来指定表单提交时要执行的 JavaScript 函数。例如,可以这样使用:
$form = ActiveForm::begin([
'options' => ['onsubmit' => 'return myFunction();']
]);
这里的 myFunction() 是一个自定义的 JavaScript 函数,它会在表单提交时被调用。如果该函数返回 false,则表单不会提交。
yii2框架利用PhpSpreadsheet写导入功能
Yii2框架可以使用PhpSpreadsheet库来读取Excel文件并将其导入到数据库中。
以下是一个简单的示例:
1. 首先,您需要在您的项目中安装PhpSpreadsheet库。您可以通过在终端中导航到您的项目目录并运行以下命令来完成安装:
```
composer require phpoffice/phpspreadsheet
```
2. 创建一个控制器和一个视图来处理文件上传和导入:
控制器:
```php
<?php
namespace app\controllers;
use Yii;
use yii\web\Controller;
use yii\web\UploadedFile;
use PhpOffice\PhpSpreadsheet\IOFactory;
class ImportController extends Controller
{
public function actionIndex()
{
// 处理文件上传
if (Yii::$app->request->isPost) {
$file = UploadedFile::getInstanceByName('file');
// 读取Excel文件
$reader = IOFactory::createReader('Xlsx');
$spreadsheet = $reader->load($file->tempName);
$worksheet = $spreadsheet->getActiveSheet();
// 读取数据并将其插入到数据库中
foreach ($worksheet->getRowIterator() as $row) {
$rowData = $row->toArray(null, true, true, true);
// 将数据插入到数据库中
}
Yii::$app->session->setFlash('success', '导入成功');
}
return $this->render('index');
}
}
```
视图:
```php
<?php
use yii\widgets\ActiveForm;
?>
<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data']]) ?>
<?= $form->field($model, 'file')->fileInput() ?>
<button type="submit" class="btn btn-primary">导入</button>
<?php ActiveForm::end() ?>
```
3. 运行应用程序并导航到“/ import”路由。选择要导入的Excel文件并提交表单。
这是一个简单的示例,您可以根据需要进行修改和扩展。