zoukankan      html  css  js  c++  java
  • yii2 Modal的使用


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

    1、这是页面的按钮,中包含了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;
    }
    },


    2、页面上线上这个
    <?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 = yiihelpersUrl::toRoute($c.'/setfeedbackhtml');
    Modal::end();
    ?>

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

    4、控制器返回页面
    /**
    * 返回效果反馈的页面
    */
    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,]);
    }
    5、返回的页面
    <?php
    use kartikselect2Select2;
    use yiiwebJsExpression;
    $c = Yii::$app->controller->id;
    ?>
    <div class="passport-user-form">

    <?php
    echo Select2::widget([ 'name' => 'title',
    'data' => appmodulesadminmodelsAdminUser::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 yiihelpersUrl::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>

  • 相关阅读:
    <!内容//>请问在CSS里面,这个符号是什么 意思?
    java.sql.Timestamp;
    struts做开发的时候action是继承Action方法还是ActionSupport方法
    @Autowired的用法和作用
    JavaScript方法和技巧大全
    Spring@Autowired注解与自动装配
    关于Class File Editor Source not found
    程序员:各种快捷键的用法及掌握 .
    Struts2的Preparable接口 .
    测试
  • 原文地址:https://www.cnblogs.com/jjchi/p/9445782.html
Copyright © 2011-2022 走看看