Yii Booster弹出文本而不是按钮

时间:2013-09-22 16:34:03

标签: php twitter-bootstrap yii yii-extensions

Yii booster documentation展示了如何在按钮上设置弹出框。我想在一个锚元素而不是一个按钮上创建一个。基本上我想把popover与Yii的tooltip结合起来。有谁知道怎么做?

这是弹出窗口的代码:

$this->widget(
'bootstrap.widgets.TbButton',
array(
    'label' => 'Top popover',
    'type' => 'primary',
    'htmlOptions' => array(
        'data-title' => 'A Title',
        'data-placement' => 'top',
        'data-content' => "And here's some amazing content. It's very engaging. right?",
        'data-toggle' => 'popover'
    ),
));

如果有办法改变这个不渲染按钮,但只是一个锚点,问题就会解决,但我在代码中找不到任何可以用来做这件事的东西。

更新

在谢尔盖回答之后,这就是我所说的:

echo CHtml::Link("$detail->text", null, 
array(
'rel' => 'popover',
'data-trigger' => "hover",
'data-title' => "$header",
'data-content' => "$body"
));

这接近我的需要,但由于某种原因,hove不起作用,只有点击,而且只显示内容而不是标题。

1 个答案:

答案 0 :(得分:5)

您可以使用CHtml:

<?php echo CHtml::Link('<i class="icon-info-sign"></i>', null, [
    'rel' => 'popover',
    'data-trigger' => 'hover',
    'data-title' => 'Your title',
    'data-content' => 'Your content',
])?>

enter image description here

<强>更新 对于Bootstrap 2.3.2:

<?php Yii::app()->clientScript->registerScript("", "$('.ipopover').popover();", CClientScript::POS_READY) ?>
<?php echo CHtml::Link('<i class="icon-info-sign"></i>', null, array(
    'class' => 'ipopover',
    'data-trigger' => 'hover',
    'data-title' => 'Your title',
    'data-content' => 'Your content',
))?>