動態網頁中怎么隱藏url參數傳遞
我們在做動態網站的時候往往會在各個頁面之間傳遞參數,而這些參數的名稱和值都會在url地址欄中被暴露出來,這樣一方面不安全,另一方面也不便於搜索引擎的收錄,有的時候還有可能由於參數中含有中文而導致某些瀏覽器會出錯(我發現在Firefox瀏覽器中用get方式傳遞中文參數時會出錯)。所以我們有必要隱藏url參數傳遞,具體方法請看下面具體介紹。
隱藏url參數傳遞,思路是用表單來傳遞參數,把參數的值放在表單中,並把表單設為隱藏,然后用超鏈接來觸發表單事件,從而把參數以post方式傳遞給另一個頁面。
(1) 例: html文件為傳遞參數的頁面,具體代碼如下:
<input type="hidden" name="data1" value="http://www.htmer.com" />
<input type="hidden" name="data2" value="11" />
</form>
<a href=" javascript:void(0)" onclick=" form1.submit()">HTMer隱藏url參數傳遞</a>
說明:上面的代碼中建立了一個名為htmer的表單,表單提交的頁面為htmer.asp,這個表單中有兩個隱藏域,分別名為data1和data2,我們的目的是將這兩個隱藏域的值傳遞到htmer.asp頁面中,上面代碼中最關鍵的代碼是最后一行,原理是用超鏈接來觸發表單的submit提交事件。
(2) 例:最終的代碼如下,希望對別人有點幫助。
<form name="form1" method="post" action="a.action">
<input type="hidden" name="submit" value="1">
<input type="submit" name="test" value = "go" style="display:none"> //隱藏一個按鈕
<a href="javascript:void(0)" onclick="javascript:document.form1.test.click();">測試主頁 </a>
</form>
事實上,點擊超鏈接之后,觸發了點擊按鈕的動作,按鈕提交了表單!
