只是一个基本需求,但无法让它工作.
我想有一个primefaces按钮来显示我的图像,没有任何文字.
我想有一个primefaces按钮来显示我的图像,没有任何文字.
但我得到的是一个只包含^字符的按钮,不显示图像,只有16×16的大小.
所以,这是primefaces按钮:
<p:commandButton image="ui-icon-csv" title="CSV Document" ajax="false"> <p:dataExporter type="csv" target="gridRPBDetails" fileName="#{tInputBean.exportFilename}" /> </p:commandButton>
这是css文件:
.ui-icon-csv { background-image: url(images/csv_small.png); }
这是按钮生成的html:
<button type="submit" onclick=";" name="gridRPBDetails:j_idt82" id="gridRPBDetails:j_idt82" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-icon-primary" role="button" aria-disabled="false"> <span class="ui-button-icon-primary ui-icon ui-icon-csv"></span><span class="ui-button-text">CSV Document</span> </button>
http://albert:8080/mywebapp/faces/javax.faces.resource/images/csv_small.png
我使用tomcat 7,这些是我的依赖:
<dependency> <groupId>org.primefaces</groupId> <artifactId>primefaces</artifactId> <version>2.2.1</version> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-api</artifactId> <version>2.0.4-b09</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.sun.faces</groupId> <artifactId>jsf-impl</artifactId> <version>2.0.4-b09</version> <scope>compile</scope> </dependency>
出了什么问题?
谢谢 !
解决方法
在使用firebug进行一些调查后,我发现罪魁祸首来自我定义的CSS内容.
所以这些是我为使这项工作所做的改变.
JSF按钮:
<p:commandButton image="ui-icon-xls" title="Excel Document" ajax="false"> <p:dataExporter type="xls" target="gridRPBDetails" fileName="#{tInputBean.exportFilename}" /> </p:commandButton>
CSS:
.ui-state-default .ui-icon-xls { background-image: url(images/excel_small.png); }
这是生成的html:
<button type="submit" title="Excel Document" onclick=";" name="gridRPBDetails:j_idt81" id="gridRPBDetails:j_idt81" class="ui-button ui-widget ui-state-default ui-corner-all ui-button-icon-only" role="button" aria-disabled="false"> <span class="ui-button-icon-primary ui-icon ui-icon-xls"></span> <span class="ui-button-text">ui-button</span> </button>
谢谢 !