我想向高手请教一个问题,困扰了我很久,首先,我把问题的现象描述一下:公司的供应商开发了一个商品系统,里面是商品的基本资料,对应的是“商品资料”菜单;后来,因为这个系统的用户的要求,公司自己的开发人员进行了二次开发,增加了一个“供应商退货”应用,对应的是“供应商退货”菜单。
在供应商退货应用的源码加入到原来的系统里面之前,点击任意菜单,回到商品资料菜单,都没有发生问题;但是,当我在供应商退货开发完成之后,把源代码加入到这个系统以后,用户反映,只要先点击了供应商退货菜单,然后,再点击商品资料菜单,原来的商品资料页面几乎不显示内容了,后来,我经过F12查看前端的源代码,发现是原来供应商开发的商品资料页面缺少了引用jquery-1.7.x.js的文件,于是,我在这个页面的开端引用了这个文件,可是,这个页面没用多久,用户又反映说如果点击“新建商品”,也就是一个新的URL入口,页面中有一段代码报错,不运行了。这段代码就是,点击一个标签为“大分类”的空文本框,出现一个下拉框,里面是各种类别的选项。代码是这样的,具体代码是怎样的我可能记得不是最清晰,但是,大致就是这样的。报错的内容是:Array.string.trim()...然后,当我点击报错的行号,出现的是我退货管理页面里最后调用的一个js文件,里面有一个String.prototype.trim()的函数,我是重写了trim()这个函数,并且封装。但是,最后的返回值return this.replace(/^\s+|\s+$/g, ""); 划红色下划线的,就是这个this.replace(...) is not a function.
我觉得奇怪,为何我已经点击了商品资料页面,它还在调用之前退货商品管理页面的JS文件?我怎么才能清理掉以前页面的引用文件,从点击页面开始加载这个页面的引用文件呢?
这是什么性质的错误?
谢谢,请高手及时回复。
PJ