母版页跟内容页不在同一级目录下,母版页里的引用路径都错了。css文件还好点,能够成功加载,但是JS文件的路径就出错了,所有的脚本都无效。
因为一般我们在母版页写路径的时候都是写相对路径“/scriptdir/scriptfile.js”。如果内容页跟母版页路径不一样,上面的语句就变成内容页的路径下,的scriptdir了。为了解决这个问题,我们在脚本导入href中写的路径只能根据内容页的位置动态获取。方法就是使用ResolveClientUrl方法找到导入的文件相对当前页的位置,然后将这个值写入到href或src中。
以下是一个脚本文件载入用动态路径的例子
<script src="<%=ResolveClientUrl("~/JS/sdmenu.js")%>" type="text/javascript" ></script>
每次页面载入是要运算一次才得到路径,效率可能稍微有那么一丁点影响,不过应该察觉不到。不知大家还有什么更好的方法。