首页 > PHP资讯 > PHP培训技术 > 在Yii中通过URL控制Bootstrap活动选项卡

在Yii中通过URL控制Bootstrap活动选项卡

PHP培训技术

作为  Mutable Labs 的首席开发人员,我发现在使用 Yii Bootstrap 选项卡(Tabs) 组件的时候,我们有时需要用户直接看到指定的选项卡,而不是第一个。Yii Bootstrap 已经提供了 "active" 变量,通过它你可以在 PHP 中定义显示哪个选项卡。我发现这种方式也是非常麻烦的,因为我们需要为每一个选项卡组件插入 PHP 代码或扩展选项卡组件以某种方法实现它。

不管怎样,我找到了对我来说最好的方法--JQuery的解决方案,如下。确保选项卡区域的 ID 为 "tabs",如果有多个选项卡区域,对其他区域的选项卡使用同样的代码。只需要把这个代码放到layout文件或header文件中...

《script》    $(document).ready(function() {        $('#tabs a:contains("")').tab('show');    });《script》

然后你只需要在URL 中设置 "tab" 变量。设置的选项卡就会在页面加载时显示。下面是如何使用它的例子,前提你已经添加了上面的代码...

widget("bootstrap.widgets.TbTabs", array(    "id" => "tabs",    "type" => "tabs",    "tabs" => array(        array("label" => "Books", "content" => "Some content", "active" => true),        array("label" => "Authors", "content" => "Some content"),    ),)); ?>

访问的 URL 如下 ...

index.php?r=controller/action&tab=Authors

选项卡会使用 "Authors" 选项卡作为活动选项卡而不是 "Books",如果 GET 参数中没有指定 tab 则会使用默认的活动选项卡如例子中的 "Books" 选项卡。

PHP培训技术

本文由欣才IT学院整理发布,未经许可,禁止转载。
支持42不支持0