jsp、js、<a>的访问方式(绝对路径+相对路径)
一、项目中应用:
1.PrivInterceptor.java 权限拦截密码过于简单直接跳转至修改密码jsp,且传上次访问的路径requestUrl。
/** * 二、登录成功后,根据URL进行权限判断 */HttpServletRequest request = ServletActionContext.getRequest();String currentURL = request.getRequestURI();if( !"".equals(bussiness_id.trim()) && null!=bussiness_id ){/** * 2.1判断工号登录后,业务密码是否为123456,是跳转到商户安全设置,修改业务密码 */TBussinessSafe busSafe = bussiSafeDAO.selectByPrimaryKey(bussiness_id);if( null!=busSafe ){String MD5password = KeyedDigestMD5.getKeyedDigest("123456","").toUpperCase();//获得123456的MD5值String bussinessPass2 = busSafe.getBussinessPass2();//获得工号业务密码if( MD5password.equals(bussinessPass2) ){String requestUrl = currentURL+(request.getQueryString()==null?"":"?"+request.getQueryString());act.put("requestUrl", requestUrl);//本次请求的Urlact.put("message", "首次登录请设置您的“业务密码”,业务密码将用于保护您的相关资金操作。");return "updateBussinessPassword";}}?2.js调用上次你请求的URL,实现修改完密码后,自动跳转到上一次访问的路径
function doUpdateSave(){$('#updateForm').dialogSubmit(doValidate(),'SafeManager_motifyPass',null,sussCallBack);}function sussCallBack(data,win){switch(data){ case '3001': $.hpDialog.alert(errorMessage[data]) ; break case '3002': $.hpDialog.alert(errorMessage[data]) ; $(win.document).find('input[type="password"]').val(''); $(win.document).find('.qr1').html('');$(win.document).find('#safe\\.newpassErr').removeData('newstate');var requestUrl = $(win.document).find('#requestUrl');if(requestUrl){var from = requestUrl.val();if(from)win.location.href=from;} break case '3006': $.hpDialog.alert(errorMessage[data]) ; break default: $.hpDialog.alert(errorMessage[data],function(){$.dialog.close();}) ; }}?3.jsp页面
<%@ include file="/cssBasePage.jsp"%> <script type="text/javascript" src="<%=path%>/jsp/phone/business/safe/passMotify.js"></script><script type="text/javascript"></script> </head> <body> <form id="updateForm" name="updateForm"> <input type="hidden" id="initLoadMethod" name="initLoadMethod" value="initsale" /> <input type="hidden" id="requestUrl" name="requestUrl" value="${requestUrl }" /><div id="safe.bussinessPass2" TTOnBlur="javascript:onBlurValiNewPass(this.value,'safe\\\\.newpassErr')"></hp:HpInputPass></div><div id="safe.newpassErr" id="safe.state" TTOnBlur="javascript:onBlurValiSurePass(this.value,'safe\\\\.surepassErr')"></hp:HpInputPass></div><div id="safe.surepassErr" TValue="save" id=""></hp:HpButton><hp:HpButton TJsClick="javascript:doReset()" TValue="reset" id=""></hp:HpButton></div></li></ul><div style="clear:both"></div></div></form> </body></html>??
二、jsp引用文件的两种方式:
?
1.在jsp中我们引入文件一般形式为这样:
<script type="text/javascript" src="<%=path %>/jsp/phone/notice/noticeList.js"></script><!--绝对路径-->
<script type="text/javascript" src="jsp/phone/notice/noticeList.js"></script><!--相对路径-->
可以看出jsp默认的访问路径可以直接使用相对路径,因为jsp头部已经引用了<base href="<%=basePath%>"/>
?
2.path和basePath,我的java工程为b2cPlatform,所以:
<%=path%>:/b2cPlatform
<%=basePath%>:http://localhost:8082/b2cPlatform/
?
三、js的window.location.href的两种访问方式:
###根据jsp默认的访问路径,js在调用时候可以分:绝对路径、相对路径。
?
1.我的代码
<script type="text/javascript">function test(){window.location.href='HelpInfo_queryHelpInfoList?initMethod=iquery';//window.location.href='/b2cPlatform/HelpInfo_queryHelpInfoList?initMethod=iquery';}</script></head><body><div> <input type="button" onclick="test()" value="testaaaaaa"/></div></body></html>? ##以上window.location.href的两种访问方式都正确!!!
?
?
四、<a href="">的两种访问方式:
1.绝对路径:<a href="/b2cPlatform/HelpInfo_queryHelpInfoList?initLoadMethod=iquery">testbbbbb</a>2.相对路径:<a href="HelpInfo_queryHelpInfoList?initLoadMethod=iquery">testbbbbb</a>
##以上<a href="">的两种访问方式都正确!!!
?
?
?
?