锁定老帖子 主题:struts中使用css和js的问题
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2004-08-03
首先,有一个jsp:result.jsp,它的html头部如下: <html> <head> <title></title> <link href="/style/css.css" rel="stylesheet" type="text/css"> <link href="/style/tablesort.css" rel="stylesheet" type="text/css"> <script type="text/javascript" src="/js/tablesort.js"></script> </head> 显然,我想在这个页面中运用style目录下的两个css文件和js目录下的某个js文件,其中,style目录和js目录和jsp页面在同级目录下。 然后,我开启tomcat,在tomcat下,直接进入这个页面,可以发现css和js可以有效的被运用到页面中去。 紧接着,我开始写struts的相关代码,所有的代码都运行正常,并由某个Action实现了某个功能后,将结果返回给result.jsp,后台处理的结果可以正确显示,但是css文件和js文件却无法起效果了,Tomcat服务器上也没有任何出错信息。 总结来说,一个页面,直接看,没有任何问题,但是经过了Action返回出来的,却失去了css和js,不知道是为什么? 大家有没有碰到过这样的问题呢? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2004-08-03
Action转发后当前路径就编程Action的路径下了,以前我遇到过路径问题。你用绝对路径试试,getContextPath+.......。
|
|
返回顶楼 | |
发表时间:2004-08-04
不知道楼上说的绝对路径是如何使用的,能给一个具体的例子嘛?
|
|
返回顶楼 | |
发表时间:2004-08-04
<link rel=stylesheet href="<%=request.getContextPath()%>/css/public.css" type="text/css">
如果不行,干脆String path = request.getContextPath(); String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/"; |
|
返回顶楼 | |
发表时间:2004-08-04
我尝试了楼上的方法,果然可行。在此先谢谢了。
不过我发觉只要经过Action返回的页面都会失去上下文,我即使想从里面link到另外一个页面都要每次<%=request.getContextPath()%>一下。不知道这算不算是struts的遗留问题?或者有谁有什么比较好的解决方法拿出来大家一起讨论讨论。 |
|
返回顶楼 | |
发表时间:2004-08-04
另外,今天发现,可以不用上述解决方法,经过Action以后出来的jsp,如果要在其中引用某个文件,例如,css,js等。不能采用相对路径,应该采用绝对路径
<link href="/XXX/style/css.css" rel="stylesheet" type="text/css"> <link href="/XXX/style/tablesort.css" rel="stylesheet" type="text/css"> 其中,XXX是项目名,XXX前面的/不能漏掉,否则服务器会报错。 |
|
返回顶楼 | |
发表时间:2004-08-05
<link href="<html:rewrite page="/style/css.css"/>" rel="stylesheet" type="text/css"> <link href="<html:rewrite page="/style/tablesort.css"/>" rel="stylesheet" type="text/css"> 用html:rewrite |
|
返回顶楼 | |
发表时间:2004-08-10
用html:base
|
|
返回顶楼 | |
发表时间:2004-08-27
目前我是采用rewrite标签的,不知道楼上所说的base标签如何使用?
|
|
返回顶楼 | |
发表时间:2004-08-27
引用 不是吧,我用STRUTS做了好几个项目了,全部都用相对路径,也没有这种情况!你可能没有配你的应用系统的虚拟目录之类,所以指向才会有错. 在程序中解决是个笨办法! 我知道在程序中解决是一个笨办法,不过我不知道你所指的“应用系统的虚拟目录”是如何配的,有什么含义嘛?麻烦赐教,不胜感激 ![]() |
|
返回顶楼 | |