日期:2014-05-16  浏览次数:20566 次

JQuery冲突
A.jsp
<script type="text/javascript" src="${pageContext.request.contextPath }/js/jquery.min.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/js/common.js"></script>
<script type="text/javascript" src="${pageContext.request.contextPath}/js/date_tools.js"></script>

B.jsp
<script type='text/javascript' src='<%=request.getContextPath()%>/dwr/interface/cmsParamManager.js'></script>
<script type='text/javascript' src='<%=request.getContextPath()%>/dwr/engine.js'></script>
<script type='text/javascript' src='<%=request.getContextPath()%>/dwr/util.js'></script>
<script language="javascript" src="<%=request.getContextPath()%>/script/prototype.js"></script>
<script language="JavaScript" src="../include/paramcheck.js" type="text/javascript"></script>
<script language="vbscript" src="../include/paramcheck.vbs" type="text/vbscript"></script>
<script language="JavaScript" src="include/rate.js" type="text/javascript"></script>

在B.jsp中有
<jsp:include page="../include/A.jsp">

c.js中有
var externalMoney=$("#externalMoney").val();
运行到这就报错

改成var externalMoney=document.getElementById("externalMoney").value;
再运就没有问题。。。。

可是用到$地方太多了,我不可能去改代码。。。化码是很久以前写好的。。。这个应该是JQuery冲突的问题。。。如何解决

------解决方案--------------------
jQuery(function($){
var externalMoney=$("#externalMoney").val();
})


这样写
------解决方案--------------------
上面这样写是完全可以的

jQuery在前,Prototype在后:
直接使用
jQuery(function(){
....
});

Prototype在前,jQuery在后
1.
var $j = jQuery.noConflict();
$j(function(){
....
});

2.
jQuery.noConflict();
jQuery(function(){

});

3.比较深奥
jQuery.noConflict();
(function($){
....
})(jQuery);



------解决方案--------------------


只要你的jquery 包 里面没有冲突 就没问题 


不知道你具体的问题体现是什么

------解决方案--------------------
+1
探讨
上面这样写是完全可以的

jQuery在前,Prototype在后:
直接使用
jQuery(function(){
....
});

Prototype在前,jQuery在后
1.
var $j = jQuery.noConflict();
$j(function(){
....
});

2.
jQuery.noConflict();
jQuery(func……

------解决方案--------------------
写个单独的js文件 jquery有个noConflict方法,可以自定义把$符号改成你自己需要的
页面引用这个js $符号用你自己重新定义的就行了 不会冲突