form之action的絕對路徑與相對路徑(轉載自用)
阿新 • • 發佈:2019-01-22
1、當你的form要提交到你自己的站點之外的URL的時候,就採取絕對路徑:
<form action="http://www.xxx.yyy:zzzz/mmm/nn/kkk.jsp">
比如說你的站點資料夾是D:\MySite\WebContent,也就是說,WEB-INF資料夾的路徑是D:\MySite\WebContent\WEB-INF
你在server.xml中配置了
<Context path="/mysite" docBase="D:\MySite\WebContent"/>
那麼Listing1.1的含義就是提交到D:\MySite\WebContent\somepage.jsp,這裡/mysite就等價於D:\MySite\WebContent,實際上,Listing1.1這種形式可以引用你的站點內的任何 頁面,因此,我個人更喜歡稱之為“站內絕對路徑”
Listing1.1
<form action="/mysite/somepage.jsp">
下面來看,比如說你當前瀏覽器的位址列是http://localhost:8080/mysite/xxx/login.jsp
而你知道在/mysite/xxx/yyy/checker.jsp中有使用者驗證的程式碼,那麼你在login.jsp中的form應該如何提交呢?見Listing1.2,其含義就是,以我當前的目錄為基準,進入子目錄yyy,找到yyy裡面的頁面checker.jsp並提交form。這裡使用的就是(站內)相對路徑了。
Listing1.2
<form action="yyy/checker.jsp">
假如說,checker.jsp也在xxx目錄中呢?顯然也是很簡單了,見Listing1.3
Listing1.3
<form action="checker.jsp">
又假如,checker.jsp在/mysite/zzz這個目錄中呢?我們需要返回上一級目錄,再進入zzz目錄,見Listing1.4
Listing1.4
<form action="../zzz/checker.jsp">
其實,由於我們已經瞭解瞭如何使用站內絕對路徑,顯然,Listing1.4這種情況也可以通過站內絕對路徑來解決,見Listing1.5
Listing1.5
<form action="/mysite/zzz/checker.jsp"> 轉自“http://www.cnblogs.com/qrlozte/p/3515810.html”