很早以前,有同志向我反映JTree(JavaScript Tree) 在JSP页面下运行不正确的问题,由于当时我没有JSP的运行环境,所以,无从考证,故不了了之(因为在非JSP页面下运行正常)。
今天我在做一个示例时,遇到这个问题,现对造成原因和解决方法作一下说明:
首先,在JTree.js里找到这一段:
var createImg=function(pSrc){ var tmp=createTag("IMG"); tmp.align ="absmiddle"; tmp.src =pSrc; tmp.onerror=function(){ try{this.parentNode.removeChild(this);}catch(e){} } return tmp; }
看红色标注的那段,它的作用是当图片载入错误时,将图片删除。
什么会造成图片加载错误呢?最常见的原因是,图片路径错误,但是在非JSP环境下,JTree运行并没有错误,那是为什么呢?
相信大家的JSP运行环境对文件名大小写是敏感的,所以,弄错了大小写,文件就不会被调用。
解决办法,将 JTreePic目录 下 图片名的大小写 与 JTree.js 里的 图片变量 的大小写完全符合,包括扩展名。
OK! |