yii2 Modal的使用


php获取当前控制
$c = Yii::$app->controller->id;

一、这是页面的按钮,中包含了modal 第一个展现了按钮的动态显示,还有引入外部的值
'feedback' => function($url, $model, $key) use ($buttons) {
if(in_array('reg:/^\/crm\/crmkaihumain\/(setfeedback|setfeedbackhtml)$/',$buttons) && !$model->effect_feedback){
return '<a href="javascript:void(0);" onclick="Setfeedbackhtml('.$model->id.')" data-toggle="modal"
data-target="#edit-modal" class="btn btn-xs btn-primary" style="display:block;margin: 10px 0;">效果反馈</a>';
}else{
return null;
}
},


二、页面上线上这个
<?php
Modal::begin([
'id' => 'edit-modal',
'header' => '<h4 class="modal-title"></h4>',
//'footer' => '<a href="#" class="btn btn-primary">肯定</a><a href="#" class="btn btn-default" data-dismiss="modal">关闭</a>',
//若是有select2 下拉框, 须要搜索的话,写上下面的
'options' => [
'tabindex' => false
],
]);
$requestUrl = \yii\helpers\Url::toRoute($c.'/setfeedbackhtml');
Modal::end();
?>

三、页面上Modal的点击事情,获取请求后端,返回页面
function Setfeedbackhtml (id) {
$('#edit-modal .modal-title').html('销售填写第一个平台的效果反馈');
$.get('/crm/crmkaihumain/setfeedbackhtml', {id:id},
function (data) {
$('#edit-modal .modal-body').html(data);
}
);
}

四、控制器返回页面
/**
* 返回效果反馈的页面
*/
public function actionSetfeedbackhtml()
{
$id = Yii::$app->request->get('id');
$adminuser = new AdminUser();
if (!$id) {
throw new NotFoundHttpException('没有开户id');
}
return $this->renderAjax('feedback',['id'=>$id,'model'=>$adminuser,]);
}
五、返回的页面
<?phpuse kartik\select2\Select2;use yii\web\JsExpression;$c = Yii::$app->controller->id;?><div class="passport-user-form">    <?php    echo  Select2::widget([ 'name' => 'title',        'data' => app\modules\admin\models\AdminUser::getAdminNameMap(),        'options' => ['placeholder' => '请输入运营的名字','id'=>'rr'],        'pluginOptions' => [            'allowClear' => true,            'multiple' => false,        ],    ]);    ?>    <div class="form-group">        <label for="passpord">输入效果反馈</label><br>        <textarea rows="8" cols="70" name="feedback" id="feedback"></textarea>    </div>    <div class="form-group" style="text-align: right;">        <span style="color:red;margn:10px;" class="error"></span>        <a href="javascript:void(0);" onclick = "resetFeedback(<?=$id?>)" class="btn btn-primary" >提交</a>    </div></div><script>    function resetFeedback(id) {        var operator = $('select[name="title"]').val();        if(operator==''){            $('.error').html('运营必须输入');            $('.error').show();            return false;        }else{            $('.error').hide();        }        var feedback = $('#feedback').val();        if (feedback == '') {            $('.error').html('效果反馈不能为空!');            $('.error').show();            return false;        }else{            $('.error').hide();        }        $.post('<?php echo \yii\helpers\Url::toRoute($c.'/setfeedback')?>',{kaihu_id:id,content:feedback,operator:operator},            function (result) {                $('#edit-modal').modal('hide');                if (result['code'] >= 0) {                    alert('提交成功')                } else {                    alert(result['msg'])                }            }            ,'json'        );    }</script>
相关文章
相关标签/搜索