我有一个简单的gridview表,它只显示一个表中的数据。它包含名为" comment"的字段。 (每个产品)并且,由于评论可能很长,在gridview中我只显示前50个字符。我想,在我悬停在每个评论之后,一个气球/泡泡/不确定如何调用它出现,整个评论都在里面。 GridView有可能吗?徘徊在评论之后,没有点击。
<div class="comments">
<?=
GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
'place_rating',
'comment:longtext',
],
]);
?>
</div>
答案 0 :(得分:1)
<div class="comments">
<?=
GridView::widget([
'dataProvider' => $dataProvider,
'columns' => [
'place_rating',
// 'comment:longtext',
[
'attribute' => 'comment',
'format' => 'longtext',
'contentOptions' => function($data) {
// needs to be closure because of title
return [
'class' => 'cell-with-tooltip',
'data-toggle' => 'tooltip',
'data-placement' => 'bottom', // top, bottom, left, right
'data-container' => 'body', // to prevent breaking table on hover
'title' => $data->comment,
];
}
]
],
]);
?>
</div>
然后在你的/views/layouts/main.php中添加这个
<?php $this->registerJs("
$(function () {
$('[data-toggle=\"tooltip\"]').tooltip();
});
", $this::POS_END, 'tooltips'); ?>
或将其添加到您的.js文件中,而不使用PHP代码