【问题标题】:YII2 - how to render a view inside active-formYII2 - 如何在活动表单中呈现视图
【发布时间】:2017-12-07 04:33:57
【问题描述】:

我正在尝试在创建新数据时以活动形式从另一个控制器呈现视图。我的目的仅在渲染视图时供参考。如何在 yii2 中实现这一点? 像这样的示例:controller-B/create 中的活动表单,并且有一个按钮可以查看模式 (controller-A/list) 并选择用户想要的数据,然后在活动表单 (controller-A/view?id=xx) 旁边呈现一个视图。

【问题讨论】:

  • 不清楚你在问什么?
  • 在控制器 B 中输入新数据时,我还想查看控制器 A 中的数据以供参考。用户单击搜索按钮,显示模态并单击要查看的数据以供参考。
  • 您的“另一个视图”是模态视图还是简单视图?
  • 简单视图就可以了。
  • 据我了解,您需要使用 ajax 并在用户想要查看的内容上呈现“另一个视图”以供参考。需要最少的代码来生成您的场景。添加代码。

标签: yii2 modal-dialog


【解决方案1】:

控制器

$view = $this->render('view', [
    'model' => $this->findModel($id),
]);

return json_encode($view);

HTML

<div class="row">
    <div class="col-sm-4">
        // ActiveForm code here
    </div>
    <div class="col-sm-8" id="whatever" style="display:none"> // initially hidden
       // render another view here
   </div>

jQuery

$(document).on('click', '.select-row', function(){
   var id = $(this).attr('data-id');
   $.get('../pengiriman-produksi/get-data', {id : id}, function(data){
       var data = $.parseJSON(data);    
       $('#whatever').show();
       $('#whatever').html(data);
   });
   $('#modalPengiriman').modal('hide');        
});

【讨论】:

  • 你很有帮助 疯子。谢谢。
猜你喜欢
  • 2011-08-25
  • 1970-01-01
  • 1970-01-01
  • 2015-01-24
  • 2015-04-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多