转自:http://blog.csdn.net/ppzhangj/article/details/7859628

1)引入的js文件出错, 
检查方法:将Js的内容写在当前的页面的<script> </script>之间,看是否能够正常运行,如果不能,请核查代码 
2) 如果引入的代码在当前页面中能够正常运行,但当引入时不能正常运行,则有两种可能 
   A:引入Js的路径有问题 
   B:引入的Js的编码格式与当前页面不匹配; 
3)引入Js的路径问题 
   js的引入不外乎两种,相对路径与绝对路径 
  test.js  与index.jsp 放在同一文件夹下,比如: web应用/manage/下面 
  第一种情况 : 
  一般在学习时, 一个tomcat上都跑多个工程, 用工程名来区分 
因为我的的URL是 :http://localhost/工程名 /manage/index.jsp 
多了一个工程名,所以要加 <%=request.getContextPath() %> 
如下: 
<script src="<%=request.getContextPath() %> /manage/test.js"></script>

第二种情况: 
  访问JSP文件时, 用相对路径引入JS,CSS文件是OK的 
  真实项目中,  一个tomcat上要是也跑了多个工程, 并用IP来区分 
  url 是这样的:  http://localhost/manage/index.jsp   注意这里,是直接访问JSP文件,不是    servlet,不是struts . 
test2.js  与index.jsp 放在同一文件夹下,下面用相对路径来引入 JS文件 是OK 的: 
<script src=test2.js></script>

第三种情况:一个通过Action跳转之后到达的Jsp页面需要引入一个Js文件:

这种情况下,请使用绝对路径, 
  在第二情况的基础上, 我们访问的是 servlet 或是struts的action  , 再转发到 index.jsp

url 是:  http://localhost/***.do或者  http://localhost/***.action 这里不是访问JSP文件了

因此路径应该这么写: 
<script src="/manage/test.js"></script> 
test2.js  前面一定要有/manage/ 
或者:<script src="http://127.0.0.1/工程名/manage/test.js"></script> 这种方法推荐

在引入js时,我们应该养成良好的习惯,请使用绝对路径,在开发时,能够大大的提高自己的开发效率。

4)引入js的编码问题; 
   
   将两者的编码改为一致,一般我们可以修改JS文件编码使其与页面编码一致。 
第二种方式是使用script标记的charset属性来显式指明所引入js文件的编码。如<script src="xx.js" charset="gbk"></script> 这样无论页面是什么编码,都可以正常的访问这个JS中的内容。 
相比之下,第二种可能更方便一些,而且作为一种好的习惯,平时我们应该尽可能都写上charset属性。

jsp引入js文件的更多相关文章

  1. Eclipse中jsp、js文件编辑时,卡死现象解决汇总

    使用Eclipse编辑jsp.js文件时,经常出现卡死现象,在网上百度了N次,经过N次优化调整后,卡死现象逐步好转,具体那个方法起到作用,不太好讲.将所有用过的方法罗列如下: 1.取消验证 windo ...

  2. Eclipse编辑jsp、js文件时,经常出现卡死现象解决汇总

    使用Eclipse编辑jsp.js文件时,经常出现卡死现象,在网上百度了N次,经过N次优化调整后,卡死现象逐步好转,具体那个方法起到作用,不太好讲.将所有用过的方法罗列如下: 1.取消验证 windo ...

  3. vue脚手架使用swiper /引入js文件/引入css文件

    1.安装vue-cli 参考地址:https://github.com/vuejs/vue-cli 如果不使用严格语法需要在后三项打no:(加了挺头疼的,老是报错,但是对自己的代码规范性也是有很大的帮 ...

  4. Eclipse编辑jsp、js文件时卡死现象的解决办法汇总

    使用Eclipse编辑jsp.js文件时,经常出现卡死现象,在网上百度了N次,经过N次优化调整后,卡死现象逐步好转,具体那个方法起到作用,不太好讲.将所有用过的方法罗列如下: 1.取消验证 windo ...

  5. 1.在html中引入js文件和Jquery框架

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  6. Vue在单独引入js文件中使用ElementUI的组件

    Vue在单独引入js文件中使用ElementUI的组件 问题场景: 我想在vue中的js文件中使用elementUI中的组件,因为我在main.js中引入了element包和它的css,并挂载到了全局 ...

  7. vue引入swiper vue使用swiper vue脚手架使用swiper /引入js文件/引入css文件

    vue引入swiper  vue使用swiper  vue脚手架使用swiper /引入js文件/引入css文件 ------------------------------------------- ...

  8. vue引入js文件时报This dependency was not found:错误

    vue引入js文件时报This dependency was not found:错误 使用了很多方法,原来是这么小的问题,特此记录 解决办法 添加 ./

  9. 使用其他服务器引入JS文件

    使用其他服务器引入JS文件,1,减轻服务器压力2,速度快3,可以缓存 cdnjs库,更新比较快https://cdnjs.com/ cdn库 引入JS文件如:jquerybootcdn : https ...

随机推荐

  1. noise_process.c

    #include <math.h>#include "otdr_const.h"#include "haar.h"#include "ot ...

  2. Linux命令缩写来由

    A 命令 全称 功能 备注 apt AdvancedPackaging Tool APT用来自动下载,配置,安装二进制或者源代码格式的软件包   awk Aho Weiberger and Kerni ...

  3. C语言编译器不检查数组下标越界

    这两天被人问了一个问题说假如C/C++访问下表越界的数组元素会报错么,于是充满好奇心的我动手试了一下,WTF,果然没有报错,但是会给程序带来莫名其妙的结果(比如十次的循环但是变成了死循环,但八次却可以 ...

  4. Informatica 常用组件Source Qualifier之八 Distinct

    如果希望 PowerCenter 从源选择唯一值,您可以使用"选择相异"选项.例如,您可以使用此功能从列出总销售额的表中提取唯一客户标识.使用"选择相异"过滤器 ...

  5. 处理MySQL更新表时Error Code: 1175. You are using safe update mode and you tried to update a table……

    Error: 1175 SQLSTATE: HY000 (ER_UPDATE_WITHOUT_KEY_IN_SAFE_MODE) Message: You are using safe update ...

  6. Android之SlideMenu实例Demo

    年末加班基本上一周都没什么时候回家写代码,回到家就想睡觉,周末难得有时间写个博客,上次写了一篇关于SlideMenu开源项目的导入问题,这次主要讲讲使用的问题,SlideMenu应用的广泛程度就不用说 ...

  7. 【手势识别】简介 GestureDetector ScaleGestureDetector

    2017-3-6 单点触摸手势识别器GestureDetector 当用户触摸屏幕的时候,会产生许多手势,例如down,up,scroll,filing等.一般情况下,我们可以通过View或Activ ...

  8. 编写和执行C#代码的插件:CS-Script for Notepad++

    这个插件可以方便得让您在Notepad++编辑器中编辑和执行C#代码(脚本).它具备通用的C#智能感知和项目任务管理功能,方式非常类似于MS Visual Studio.除了这一点,它提供了通用的调试 ...

  9. IOS Xib使用——为控制器添加Xib文件

    Xib文件是一个轻量级的用来描述局部界面的文件,它与StoryBoard类似,都是使用Interface Bulider工具进行编辑.但是StoryBoard是重量级的,它是用来描述整个软件的多个界面 ...

  10. 触摸事件UITouch的应用

    因为UIView或者UIViewController都是继承与UIResponder ,所以都有UITouch这个事件.当用户点击屏幕的时候,会产生触摸事件. 通过UITouch事件,可以监听到开始触 ...