我有一个数据表,其中包含过滤、排序和分页功能。 一切正常,直到我将现成的设计模板应用到我的应用程序中。我猜自定义的现成模板覆盖了默认的 primefaces 主题。所以数据表功能不起作用...现在我得到一个没有主题的普通数据表... 我想应用自定义模板来增强我的应用程序设计,但我也想保持 primefaces 组件设计不变。我应该怎么办? 请提出一个解决方案...
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
<meta http-equiv="Content-type" content="text/html; charset=UTF-8"/>
<title>Scrip Master | Dashboard Admin</title>
<h:outputStylesheet library="css" name="reset.css"/>
<h:outputStylesheet library="css" name="text.css"/>
<h:outputStylesheet library="css" name="layout.css"/>
<h:outputStylesheet library="css" name="jquery-ui-1.css"/>
<h:outputStylesheet library="css" name="jquery.css"/>
<h:outputStylesheet library="css" name="custom.css"/>
<link rel="stylesheet" href="css/layout.css" type="text/css" media="screen" title="no title"/>
<h:outputScript library="js" name="jquery-1.js"/>
<h:outputScript library="js" name="excanvas.js"/>
<h:outputScript library="js" name="facebox.js"/>
<h:outputScript library="js" name="jquery-ui-1.js"/>
<h:outputScript library="js" name="jquery_002.js"/>
<h:outputScript library="js" name="jquery_003.js"/>
<h:outputScript library="js" name="jquery_005.js"/>
<h:outputScript library="js" name="jquery_004.js"/>
<h:outputScript library="js" name="jquery.js"/>
<h:outputScript library="js" name="widgets.js"/>
<h:outputScript library="js" name="dashboard.js"/>
</h:head>
最佳答案
你添加的只是一个CSS?或者还包括一些js?还可以在你的 Firebug 控制台中查看一些错误你也可能想使用
<f:facet name="first">
<h:outputScript ..../>
<h:outputStylesheet.../>
</f:facet>
确保首先加载您的自定义内容...
也看这里taking care of the order that js files being loaded
您是否有任何机会尝试包含您自己的 jquery 库?或任何其他 jquery 插件?
编辑
对我来说似乎是 jquery 冲突
删除附加jquery库js文件的包含
然后添加以下内容
<h:outputScript library="primefaces" name="jquery/jquery.js" target="head" />
<h:outputScript target="head">
$ = jQuery;
</h:outputScript>
如果不起作用,请尝试用 <f:facet name="first"> ... </f:facet>
包装它
关于java - primefaces 默认 css 主题被自定义模板覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10629896/