我正在尝试将日历效果(使用Primeface)添加到我的JSF网页。我正在使用Netbeans 6.9.1和glassfish 3.1。
我按照this blog
中的说明将Primeface安装到我的应用程序中并从Primefaces website复制了一些代码。我复制了整个表单并将其粘贴到我的xhtml文件中。我相应地更改了bean类。
我没有在我的网页中弹出日历。为什么会这样呢?我在Chrome和Firefox上测试了这个仍然没有运气。有人可以帮助我
答案 0 :(得分:6)
首先,确保您已在XML命名空间中声明了PrimeFaces标记库。对于当前的PrimeFaces 2.x版本,即
xmlns:p="http://primefaces.prime.com.tr/ui"
其次,PrimeFaces附带了许多CSS / JS资源,这些资源应该由<h:head>
自动包含。日历组件(以及许多其他组件)由这些资源进行样式设置和激活。因此,为了让它们自动包含在内,您需要确保在主模板中有<h:head>
而不是<head>
。为了保持一致,请将<body>
替换为<h:body>
。
更新,存在JavaScript冲突。 <p:calendar>
以最简单的形式工作正常。它停止工作,因为你的模板中有一个jQuery菜单栏,而这需要一个<script src="jquery.js">
。由于PrimeFaces已经捆绑了jQuery,因此很可能与手动jQuery脚本包含冲突。你需要摆脱手工jQuery脚本包含。
答案 1 :(得分:1)
当您使用jquery datepicker小部件并且我还假设日历widgit时,您可以设置区域参数以使用特定国家/地区的日期格式。
例如:
$.datepicker.setDefaults( $.datepicker.regional[ "en-GB" ] );
如果这样做,您必须包含适当的定义,例如:
&lt; script type =“text / javascript”src =“js / datepicker-en-GB.js”&gt;&lt; / script&gt;