1. 程式人生 > >form之action的絕對路徑與相對路徑(轉載自用)

form之action的絕對路徑與相對路徑(轉載自用)

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”