我使用的是Richfaces4, 一切都很好看。 但就在我将以下行添加到我的pom.xml之后:
<dependency>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<version>3.5</version>
</dependency>
我尝试登录时出现以下错误, 似乎“Richfaces”和“jQuery”没有被包含/导入我的服务器?
$ is not a function
[Break On This Error]
</div><script type="text/javascript">$(document).ready(function() {
home.seam (line 93)
RichFaces is not defined
[Break On This Error]
...="display: none;"><script type="text/javascript">checkUpTime=function()
{RichFace...
答案 0 :(得分:0)
使用jQuery.noConflict()
,因为你有jQuery与其他库冲突。
描述:放弃jQuery对
$
变量的控制。许多JavaScript库使用
$
作为函数或变量名称,就像jQuery
一样。在jQuery's
案例中,$
只是jQuery
的别名,因此所有功能均可在不使用$
的情况下使用。如果您需要在jQuery
旁边使用其他JavaScript库,请通过调用$
将$.noConflict()
的控制权返还给其他库。在$
初始化期间保存jQuery
的旧引用;noConflict()
只是简单地恢复它们。
示例强>
jQuery.noConflict();
// Use jQuery via jQuery(...)
jQuery(document).ready(function()
{
jQuery("div").hide();
});
或强>
var $jQ = jQuery.noConflict();
// Use jQuery via $jQ(...)
$jQ(document).ready(function()
{
$jQ("div").hide();
});
使用以下技术,允许我们在代码块中使用$
而不会覆盖$
:
(function($) { /* some code that uses $ */ })(jQuery)
答案 1 :(得分:0)
现在在Primefaces 3.5.1中解决了。这被标记为issue 5219。要查看PrimeFaces来源的更改,请检查revision 8796。