Yii2 ListView 不显示 HTML
Yii2 ListView not display HTML
我已经为测验应用程序创建了一个列表视图。但它显示 html.
This is how it displays
Inspect elements
我的代码:
echo ListView::widget([
'dataProvider' => $dataProvider,
// 'format' => 'raw',
'itemView' => '_view',
'layout'=>'{pager}{items}{pager}',
]);
我的观点:
<div class="quiz-answer">
<?php
echo $model->title;
?>
<br/>
<?php
echo Html::radioList($model->id, $model->user_answer, $model->answers, array('class' => 'question'));
?>
我找到了使用 HTML::decode 的解决方案。
感谢您的所有建议和帮助。
你应该render
你的模板是这样的:
echo ListView::widget([
'dataProvider' => $dataProvider,
// 'format' => 'raw',
'itemView' => function($model){
return $this->render('_view',[
'model' => $model
]);
},
'layout'=>'{pager}{items}{pager}',
]);
在 hereapp\modules\quiz\controllers\SiteController
的 yii2-quiz 标题编码 $answer->title = Html::encode($question->title);
因此您的标题中的 html 标签已编码。
您可以评论它并提交您的答案以检查它。
使用Html::decode($model->title);
解决。
我已经为测验应用程序创建了一个列表视图。但它显示 html.
This is how it displays
Inspect elements
我的代码:
echo ListView::widget([
'dataProvider' => $dataProvider,
// 'format' => 'raw',
'itemView' => '_view',
'layout'=>'{pager}{items}{pager}',
]);
我的观点:
<div class="quiz-answer">
<?php
echo $model->title;
?>
<br/>
<?php
echo Html::radioList($model->id, $model->user_answer, $model->answers, array('class' => 'question'));
?>
我找到了使用 HTML::decode 的解决方案。
感谢您的所有建议和帮助。
你应该render
你的模板是这样的:
echo ListView::widget([
'dataProvider' => $dataProvider,
// 'format' => 'raw',
'itemView' => function($model){
return $this->render('_view',[
'model' => $model
]);
},
'layout'=>'{pager}{items}{pager}',
]);
在 hereapp\modules\quiz\controllers\SiteController
的 yii2-quiz 标题编码 $answer->title = Html::encode($question->title);
因此您的标题中的 html 标签已编码。
您可以评论它并提交您的答案以检查它。
使用Html::decode($model->title);
解决。