日期:2014-05-16  浏览次数:20324 次

关于jsp页面调用不到js的问题
我在jsp页面写的代码调用js的某个方法,可是死活调用不到该js,jsp页面的代码如下:
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@page import="com.goldmake.checktask.control.PageControl,com.goldmake.checktask.model.Userinfo;" %>


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">


<html>
  <head>
  
    <title>资金明细</title>
     
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<script type="text/javascript" src="js/jquery-1.2.6.js"></script> 
<script type="text/javascript" src="js/check.js"></script>
<link href="css/d.frame.css" rel="stylesheet" type="text/css" />
<link href="css/tab-0-0.css" rel="stylesheet" type="text/css" />  
  </head>




首先说明下:其中src的路径肯定没有问题,因为,我用其它的html页是完全可以调用到的,另外就是编码,两个页面
都是用的‘utf-8’,没有乱码问题。





该问题的解决方法:
<script type="text/javascript" src="js/check.js"></script> 中的相对路径:src="js/check.js"是相对于浏览器
地址栏的路径的,而不是jsp文件的路径,我的jsp文件在被servlet转发后地址栏的路径是:http://localhost:8080/checkkt_04/control/CashDetailReport
那么在Control文件夹下,压根儿就没有js文件夹,所以肯定找不到对象啦。解决方法,把:<script type="text/javascript" src="js/check.js"></script>
改成绝对路径:<script type="text/javascript" src="checkkt_04/audit/js/check.js"></script>
1 楼 dukai1008 2010-07-27  
是否用了模版,或者是用了名字空间?

亦或用了伪静态多了一个目录,最好看看你的链接,是否多了一个目录
2 楼 liaobo_626 2010-07-27  
没有用伪静态其它之类的,就是个简单的用Eclipse建的一个jsp页面。
3 楼 matychen 2010-07-27  
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
换一下吧
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
4 楼 Zahir 2010-07-27  
js和jsp的编码是否一致?
5 楼 liaobo_626 2010-07-27  
页面编码都是utf-8
6 楼 抛出异常的爱 2010-07-27  
使用firebug
7 楼 paohui01 2010-07-27  
你用firefox看一下 你的JS是否正常加载。如果正在加载,把你的JS代码 贴出来看看吧
8 楼 ywlqi 2010-07-27  
路径没问题一般是编码问题,到IE临时文件去看看js是不是乱码一般可确认是不是编码问题。
<script type="text/javascript" src="js/check.js" charset='utf-8'></script> ,这样试试。
9 楼 liaobo_626 2010-07-27  
谢谢大家的回复,我刚刚做了下试验已经解决了,发现就算是不同的编码一样能找到文件哈。因为文件都是英文字母所以应该不存在编码问题。
10 楼 wese345 2010-07-27  
加上eclipse创建生成jsp时的这一句<base href="<%=basePath%>">对应的对basePath赋值的那段也不要删,再看看能不能加载