问题的原因是$符号已经被其他的js库预先定义了,在jquery中,$失去了原本预定义的含义。
<script language="javascript" type="text/javascript"
src="/js/datepicker/WdatePicker.js"></script>
<script src="/js/jquery.js" type="text/javascript"></script>
<script language="JavaScript" type="text/JavaScript">
jQuery.noConflict();
</script>
运行这个函数将变量$的控制权让渡给第一个实现它的那个库。
这有助于确保jQuery不会与其他库的$对象发生冲突。
在运行这个函数后,就只能使用jQuery变量访问jQuery对象。
例如,在要用到$("div p")的地方,就必须换成jQuery("div p")。
注意:这个函数必须在你导入jQuery文件之后,并且在导入另一个导致冲突的库之前使用。
当然也应当在其他冲突的库被使用之前,除非jQuery是最后一个导入的。
jQuery.noConflict();
// 使用 jQuery
jQuery("div p").hide();
// 使用其他库的 $()
$("content").style.display = 'none';
还有一种写法,创建一个新的别名用以在接下来的库中使用jQuery对象:
var j = jQuery.noConflict();
// 基于 jQuery 的代码
j("div p").hide();
// 基于其他库的 $() 代码
$("content").style.display = 'none';