关于使用struts2跳转后css和js失效的解决方式

根据观察,主要是由于通过action跳转后的url会根据命名空间,自动跳转到命名空间子目录,使得当前引用的css和js查找不到,从而失效,根据这个原因,可使用四种办法解决:
1.使用struts2.xml文件中配置文件的配置,通过修改result的type使得url重定向,result默认的是dispatcher,是服务器中的跳转,使用redirect可以使得客户端重新得到一个新的url,这样url会是上一次目录,可以查找到css和js,但是这种办法有一种特别不好的地方,每次跳转需要把数据保存到session中,对于开发来说是不可取的,它会重新创建一个action,使得上一个action中的数据无法使用,不建议采用。
2.由于url的原因使得css和js查找不到,我们可以把引入的css和js加入进一步地址比如说:以前的地址是< link href= "../style.css" rel="stylesheet" type="text/css" /> 可以修改为< link href= "../../style.css" rel="stylesheet" type="text/css" />这样网页就可以直接查询到自己的外部样式表了。
3.将struts2.xml命名空间改写为“/”,不再使用自定义的命名空间,比如说“/admin”。
4.使用jsp网页中的basePath是项目的根路径不过需要在其下加入子目录,因为本身的basePath是属于根路径,需要下面的子目录,比如说在admin子目录下:String basePath = request.getScheme()+"://" +request.getServerName()+":"+request.getServerPort()+path+ "/admin/"
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值