我使用dgrid制作一个简单的网格(http://dojofoundation.org/packages/dgrid/tutorials/defining_grid_structures/)。 我的问题很简单:如何将html标签放在标签列的标题栏中?因为如果我放一个img标签,例如,label包含字符串img src = ... 感谢
答案 0 :(得分:2)
列定义可以提供构建列标题的函数。
var column = {
//...
renderHeaderCell: function(node) {
domConstruct.create('img', {src: ''}, node);
return node;
}
};
请参阅DGrid wiki中的renderHeaderCell()
功能文档:
renderHeaderCell(node)
将调用一个可选函数来呈现列的标题 细胞。像renderCell一样,这可能直接在节点上运行, 或者返回一个放在其中的节点。
答案 1 :(得分:0)
使用put-selector
的单行答案:
renderHeaderCell: function(node) {
return put("img[src=/your/image]");
}
请注意,如果您的列恰好是选择器,此功能将无效 - 因为selector.js定义了自己的renderHeaderCell(node)
功能。
答案 2 :(得分:0)
@craig感谢您的回答,在我的情况下,我只需要知道如何将HTML添加到标题单元格中,而renderHeaderCell(node)
绝对是答案。
对于其他任何人只需要在标题单元格中添加<br>
,<span>
,<div>
等,这里有几个简单的例子可供比较:
不使用renderHeaderCell(node)
的示例:
{
label: 'Title',
field: appConfig.fields[0],
sortable: false
}
使用renderHeaderCell(node)
的示例:
{
renderHeaderCell: function(node) {
node.innerHTML = '<span class="headerCell">Title<br><br></span>'
},
field: appConfig.fields[0],
sortable: false
}
然后您可以正常使用CSS进行定位:
.headerCell {
font-size: 9px;
}