ECSHOP完美解决jquery的冲突问题
作者:我就是个世界
发表于:2013-10-21
ecshop2.7.2/2.7.3解决jquery的冲突,两个版本亲测,无误
1.复制一份 transport.js 改名为 transport.org.js 提供给后台使用
2.注释掉js/transport.js里的toJSON功能 行数为497-737行之间。其中将
[code]legalParams = "JSON=" + params.toJSONString();[/code]
替换为
[code]legalParams = $.evalJSON(params);[/code]
然后把
[separator]
[code]result = result.parseJSON();[/code]
修改为
[code]result = $.evalJSON(result);[/code]
3.修改js/index.js里的第44行,将
[code]var res = result.parseJSON();[/code]
改为:
[code]var res = $.evalJSON(result);[/code]
4.修改js/改common.js,
把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');[/code]
然后把
[code]Ajax.call('flow.php?step=add_package_to_cart', 'package_info=' + package_info.toJSONString(), addPackageToCartResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_package_to_cart', 'package_info=' + $.toJSON(package_info), addPackageToCartResponse, 'POST', 'JSON');[/code]
最后把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');[/code]
5.修改compare.js文件
把
[code]this.data = cookieValue.parseJSON();[/code]
修改为
[code]this.data = $.evalJSON(cookieValue);[/code]
然后把
[code]var obj = cookieValue.parseJSON();[/code]
修改为
[code]var obj = $.evalJSON(cookieValue);[/code]
最后把
[code]document.setCookie("compareItems", this.data.toJSONString());[/code]
修改为
[code]document.setCookie("compareItems", $.toJSON(this.data));[/code]
6.修改js/global.js文件
把
[code]function $()[/code]
修改为
[code]function $e()[/code]
然后把
[code]var element = $(element);[/code]
修改为
[code]var element = $e(element);[/code]
7.修改后台头部引入transport.js路径 admin/templates/pageheader.htm 第9行改为:
[code]{insert_scripts files="../js/transport.org.js,common.js"}[/code]
8.修改themes/default/library/page_header.lbi文件在
[code]{insert_scripts files='transport.js,utils.js'}[/code]
上面加上如下代码
[code]{insert_scripts files='jquery.js,jquery.json.js'}[/code]
9.修改你的模板下的library/comment_list.lbi。
把
[code]Ajax.call('comment.php', 'cmt=' + cmt.toJSONString(), commentResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('comment.php', 'cmt=' + $.toJSON(cmt), commentResponse, 'POST', 'JSON');[/code]
10.修改模板compare.dwt。
把
[code]var obj = document.getCookie("compareItems").parseJSON();[/code]
修改为
[code]var obj = $.evalJSON(document.getCookie("compareItems"));[/code]
然后把
[code]document.setCookie("compareItems", obj.toJSONString());[/code]
修改为
[code]document.setCookie("compareItems", $.toJSON(obj));[/code]
11.修改模板flow.dwt
把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), collect_to_flow_response, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), collect_to_flow_response, 'POST', 'JSON');[/code]
然后把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), fittings_to_flow_response, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), fittings_to_flow_response, 'POST', 'JSON');[/code]
12.这样就可以了,若果需要使用ajax那么请用修改后的json功能。
相关文件
http://files0.cnitblog.com/zhangbin1126/jquery.json-1.3.js
http://files0.cnitblog.com/zhangbin1126/jquery-1.6.2.min.js
1.复制一份 transport.js 改名为 transport.org.js 提供给后台使用
2.注释掉js/transport.js里的toJSON功能 行数为497-737行之间。其中将
[code]legalParams = "JSON=" + params.toJSONString();[/code]
替换为
[code]legalParams = $.evalJSON(params);[/code]
然后把
[separator]
[code]result = result.parseJSON();[/code]
修改为
[code]result = $.evalJSON(result);[/code]
3.修改js/index.js里的第44行,将
[code]var res = result.parseJSON();[/code]
改为:
[code]var res = $.evalJSON(result);[/code]
4.修改js/改common.js,
把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');[/code]
然后把
[code]Ajax.call('flow.php?step=add_package_to_cart', 'package_info=' + package_info.toJSONString(), addPackageToCartResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_package_to_cart', 'package_info=' + $.toJSON(package_info), addPackageToCartResponse, 'POST', 'JSON');[/code]
最后把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), addToCartResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), addToCartResponse, 'POST', 'JSON');[/code]
5.修改compare.js文件
把
[code]this.data = cookieValue.parseJSON();[/code]
修改为
[code]this.data = $.evalJSON(cookieValue);[/code]
然后把
[code]var obj = cookieValue.parseJSON();[/code]
修改为
[code]var obj = $.evalJSON(cookieValue);[/code]
最后把
[code]document.setCookie("compareItems", this.data.toJSONString());[/code]
修改为
[code]document.setCookie("compareItems", $.toJSON(this.data));[/code]
6.修改js/global.js文件
把
[code]function $()[/code]
修改为
[code]function $e()[/code]
然后把
[code]var element = $(element);[/code]
修改为
[code]var element = $e(element);[/code]
7.修改后台头部引入transport.js路径 admin/templates/pageheader.htm 第9行改为:
[code]{insert_scripts files="../js/transport.org.js,common.js"}[/code]
8.修改themes/default/library/page_header.lbi文件在
[code]{insert_scripts files='transport.js,utils.js'}[/code]
上面加上如下代码
[code]{insert_scripts files='jquery.js,jquery.json.js'}[/code]
9.修改你的模板下的library/comment_list.lbi。
把
[code]Ajax.call('comment.php', 'cmt=' + cmt.toJSONString(), commentResponse, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('comment.php', 'cmt=' + $.toJSON(cmt), commentResponse, 'POST', 'JSON');[/code]
10.修改模板compare.dwt。
把
[code]var obj = document.getCookie("compareItems").parseJSON();[/code]
修改为
[code]var obj = $.evalJSON(document.getCookie("compareItems"));[/code]
然后把
[code]document.setCookie("compareItems", obj.toJSONString());[/code]
修改为
[code]document.setCookie("compareItems", $.toJSON(obj));[/code]
11.修改模板flow.dwt
把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), collect_to_flow_response, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), collect_to_flow_response, 'POST', 'JSON');[/code]
然后把
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + goods.toJSONString(), fittings_to_flow_response, 'POST', 'JSON');[/code]
修改为
[code]Ajax.call('flow.php?step=add_to_cart', 'goods=' + $.toJSON(goods), fittings_to_flow_response, 'POST', 'JSON');[/code]
12.这样就可以了,若果需要使用ajax那么请用修改后的json功能。
相关文件
http://files0.cnitblog.com/zhangbin1126/jquery.json-1.3.js
http://files0.cnitblog.com/zhangbin1126/jquery-1.6.2.min.js
请发表您的评论