Java PrimeFaces在datatable中自定义行编辑器

Java PrimeFaces在datatable中自定义行编辑器,java,jsf-2,primefaces,Java,Jsf 2,Primefaces,有没有办法自定义rowEditor按钮?我的意思是,如果可以更改图像或添加文本。 如果不可能,有没有办法用另一个控件(如按钮或链接)获得相同的行为?只需使用CSS即可。下面的示例假设您希望将其应用于所有数据表/行编辑器,并在/resources/images文件夹中具有所需的图像文件 .ui数据表.ui行编辑器.ui图标铅笔{ 背景图片:url(“#{resource['images/pencil.png']}”); } .ui数据表.ui行编辑器.ui图标检查{ 背景图片:url(“#{res

有没有办法自定义rowEditor按钮?我的意思是,如果可以更改图像或添加文本。
如果不可能,有没有办法用另一个控件(如按钮或链接)获得相同的行为?

只需使用CSS即可。下面的示例假设您希望将其应用于所有数据表/行编辑器,并在
/resources/images
文件夹中具有所需的图像文件

.ui数据表.ui行编辑器.ui图标铅笔{
背景图片:url(“#{resource['images/pencil.png']}”);
}
.ui数据表.ui行编辑器.ui图标检查{
背景图片:url(“#{resource['images/check.png']}”);
}
.ui数据表.ui行编辑器.ui图标关闭{
背景图片:url(“#{resource['images/close.png']}”);
}
另见:

此外,如果您想使用“Font-Awesome”中的fa图标,可以从Font-Awesome.css复制分配给它们的粘贴类

.ui-datatable table tbody tr td .ui-row-editor .ui-icon-pencil 
{
   background: none !important;
   text-indent: initial;
   /* display: inline-block; */
   font: normal normal normal 14px/1 FontAwesome;
   font-size: inherit;
   text-rendering: auto;
   -webkit-font-smoothing: antialiased;
   -moz-osx-font-smoothing: grayscale;
   transform: translate(0, 0);
}
.ui-datatable table tbody tr td .ui-row-editor .ui-icon-pencil:before {
   content: "\f044";
}
.ui-datatable table tbody tr td .ui-row-editor .ui-icon-pencil:hover {
   font-weight: bold;
}

谢谢,如果我想添加文本标签而不是图像呢?不客气。默认情况下,组件不支持文本。您可以使用CSS
content
属性,或者将图像与文本一起使用,或者创建自定义渲染器,或者使用JS/jQuery
text()
。因此,您实际上说的是:使用CSS;-)