我正在使用这个数据表插件的Laravel,这是使用这个jQuery数据表插件
我遵循这里找到的说明,所以这是我的控制器:
class FeedbackController extends Controller {
public function UserFeedback(Request $request) {
$t = Datatable::make(new CollectionProvider(FeedbackModel::all()))
->column('overall')
->build();
if ($t->shouldHandle()) {
return $t->handleRequest();
}
return view('admin.feedback', ['datatable' => $t->view()]);
}
}
我的观点是:
{{
$datatable->html()
}}
但由于某些原因,当我加载页面时它输出的html是这样的htmlentities:
<table id="dataTable">
</table><script type="text/javascript">
jQuery(document).ready(function () {
// dynamic table
oTable = jQuery('#dataTable').DataTable({
"processing": true,
"serverSide": true,
"ajax": "/",
"columns": [
{ 'data': 'overall' },
]
});
});
</script>
它为什么这样做?
这将帮助你(取自laravel文档)
使用花括号显示原始文本
如果您需要显示一个用花括号括起来的字符串,您可以通过在文本前加上@符号来逃避Blade的行为:
@{{ This will not be processed by Blade }}
如果不希望对数据进行转义,可以使用以下语法:
Hello, {!! $name !!}.
用在这个…
{{
$datatable->html()
}}
忽略上面的,这是错误的方法,做下面的…
或
你可以像这样解码html…
htmlspecialchars_decode($datatable->html())