【问题标题】:Yii refresh Tab data on Tab ActiveYii 在 Tab Active 上刷新 Tab 数据
【发布时间】:2016-06-10 12:22:01
【问题描述】:

我正在开发 Yii 应用程序并使用 Tabs 来显示图表和数据。 我的代码如下

<ul class="nav nav-tabs">
           <li class="active">
            <a href="#tab-graph” data-toggle="tab">
             <?php echo Yii::t('li', ‘Graph’);?>
               </a>
             </li>
              <li>
               <a href="#tab-overview" data-toggle="tab">
                 <?php echo Yii::t('li', ‘Overview');?>
                  </a>
                    </li>
              </ul>


<div class="tab-content">
      <div class="tab-pane active" id="tab-graph">
  <?php
  $this->renderPartial(‘graph/graph’);
  ?>
</div>
<div class="tab-pane" id="tab-overview">
  <div> here is status</div>
  <div> 10%</div>
</div>

</div>

在第一个选项卡中,我渲染部分显示 YII 图形的文件,但问题是当我单击下一个选项卡并返回第一个选项卡时,图形消失。

我认为 YII 图表不喜欢标签和隐藏。

当点击离开并返回时,如何使图表在第一个选项卡上处于活动状态? 或者 我想刷新选项卡并再次渲染以显示图形。

<script>
$('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
  var target = $(e.target).attr("href")

  if(target=="#tab-graph"){
    //alert(target);
    location.reload();
  }
});
</script>

我已经使用 jquery 完成了此操作,但这会刷新所有页面,但我只需要显示图形或仅刷新选项卡而不是所有页面。

谢谢

【问题讨论】:

    标签: javascript php jquery yii


    【解决方案1】:

    您可以使用 ajax 请求更新您的标签数据。单击选项卡设置 ajax 调用。并使用 renderPartial('view', false, true)。 Examples here

    【讨论】:

    • 您好,感谢您的回复,但是如何在 Javascript 中执行 renderPartial ?我尝试了这个 $.get('graph/graph', null, function(html) 但它不起作用,它显示了错误的路径并且无法加载文件。
    猜你喜欢
    • 2019-02-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-08
    • 1970-01-01
    • 1970-01-01
    • 2016-10-29
    • 1970-01-01
    相关资源
    最近更新 更多