javascript-数据透视表在表中显示html
作者:互联网
我正在尝试使用https://github.com/nicolaskruchten/pivottable,基本上我想在表中显示图像.到目前为止我所做的是;但它不会将图像显示为img标签,而是将其视为字符串
<body>
<script type="text/javascript">
$(function(){
$("#output").pivotUI(
[
{product: "product1", image: "<img src='image1' alt='' height='42' width='42'>"},
{product: "product2", image: "<img src='image2' alt='' height='42' width='42'>"}
]
);
});
</script>
<p><a href="http://nicolas.kruchten.com/pivottable/examples/index.html">« back to examples</a></p>
<div id="output" style="margin: 10px;"></div>
</body>
解决方法:
由于表渲染器不支持th元素的html值,因此它显式设置了必须创建自己的渲染器的textContent属性.
您有两种选择:
1.基于Table渲染器代码创建一个渲染器,并将textContent更改为innerHTML.由于渲染功能非常大,我将使用jsfiddle代码段:http://jsfiddle.net/u3pwa0tx/
2.重复使用现有的Table渲染器,该渲染器将html显示为纯文本,但在将其返回给要附加的父级之前,请将所有文本移到html.
编辑:我在主存储库https://github.com/nicolaskruchten/pivottable/pull/214上创建了一个拉取请求
$(function(){
var rendererHtml = function(){
var result = pivotTableRenderer2.apply(this,arguments);
$(result).find('th').each(function(index,elem){
var $elem = $(elem);
$elem.html($elem.text());
})
return result;
}
$("#output").pivotUI(
[
{product: "product1", image: "<img src='image1' alt='' height='42' width='42'>"},
{product: "product2", image: "<img src='image2' alt='' height='42' width='42'>"}
],{
renderers:{
'table2Renderer': rendererHtml
}
}
);
});
标签:pivot-table,html,javascript,pivottable-js 来源: https://codeday.me/bug/20191029/1957564.html