Yii2.0 模态弹出框+ajax提交表单

Cytheria ·
更新时间:2024-09-21
· 664 次阅读

如题 我们使用模态弹出框+ajax提交表单 首先我们把index视图的create按钮添加data-toggle 和 data-target。

代码如下:

<?php echo Html::a('添加请假单', ['create'], ['class' => 'btn btn-success','data-toggle'=>'modal','data-target'=>'#ajax']) ?>

在index视图添加如下代码 来显示模态弹出框:

<div class="modal bs-example-modal-lg" id="ajax"> <div class="modal-dialog"> <div class="modal-content width_reset" id="tmpl-modal-output-render"> </div> </div> </div>

修改后的效果如下

然后我们修改控制器中的create方法,把render改为renderAjax即可

return $this->renderAjax('create', [ 'model' => $model, ]);

如果想添加表单验证我们需要修改views 里的 _form 添加上id

<?php $form = ActiveForm::begin(['options' => ['enctype' => 'multipart/form-data'],'id'=>'leave-form-self']) ?> 指向 你的models 在rules添加上验证规则 public function rules() { return [ [['t_leave_date', 't_days', 't_reason', 't_nickname','t_leave_enddate'], 'required'], [['t_leave_date', 't_leave_enddate'], 'safe'], [['t_days'], 'number'], [['t_reason'], 'string'], [['type', 'add_time', 'uid', 'update_time', 'status', 'is_shen'], 'integer'], [['t_pickup', 't_nickname', 't_pass'], 'string', 'max' => 20], [['t_img', 'reviewer_user', 'audit_user'], 'string', 'max' => 255] ]; }

效果如下

这样就实现了ajax提交表单

您可能感兴趣的文章:Yii2基于Ajax自动获取表单数据的方法yii2 modal弹窗之ActiveForm ajax表单异步验证Yii框架结合sphinx,Ajax实现搜索分页功能示例yii2控制器Controller Ajax操作示例Yii基于CActiveForm的Ajax数据验证用法示例Yii+upload实现AJAX上传图片的方法yii2使用ajax返回json的实现方法Yii2实现ajax上传图片插件用法使用Yii整合的pjax(pushstate+ajax)实现无刷新加载页面Yii使用ajax验证显示错误messagebox的解决方法ajax翻页效果模仿yii框架自己写的Yii2表单事件之Ajax提交实现方法



表单 yii ajax提交 AJAX

需要 登录 后方可回复, 如果你还没有账号请 注册新账号