posts - 22,comments - 35,trackbacks - 0

          使用javascript代替CGI

          你可能對CGI腳本比較熟悉,利用CGI你可以通過表單將數字或者變量從一個網頁上傳遞到另外一個網頁。當然,你可以利用“POST”將變量以獨立的線程進行傳遞而不顯示在瀏覽器中,或者利用“GET”將變量編碼到URL。

          javascript不能在變量在服務器端被處理的時候利用POST方法;但是你可以注意到當你提交一個使用GET方法的表單的時候,定位條上在文件名之后包含了額外的信息,比如:

          www.pconline.com.cn/mypage.html?name=Mike&age=33

          利用javascript我們可以訪問這些變量,具體可以使用一個相關的數組合來實現,如下所示:

          <SCRIPT language="javascript1.1">

          <!-- Hide from older browsers


          function formInput() {

          // empty object

          }

          var valueOf = new formInput();

          var pairs = document.location.search.substring(1).split("&");

          for (var i=0; i < pairs.length; i++) {

          var values = pairs[i].split("=");

          valueOf[values[0]] = unescape(values[1]);

          }

          // Stop hiding -->

          </SCRIPT>

          以上代碼的作用是從瀏覽器的定位條上將變量提取出來并將它們存儲在一個相關的數組合中。在網頁的其它部分任何的變量都可以這樣被引用,如:valueOf["variablename"],當然這些引用要在SCRIPT標簽中。

          作為一個測試,我們可以利用for .. in loop循環語句列出所有的被傳遞的變量。這允許我們循環掉出所有相關數組的內容而不管我們是不是直到這些變量的名字。具體代碼如下:

          <SCRIPT language="javascript">

          <!-- Hide from older browsers


          for (var x in valueOf) {

          document.write(x + " = " + valueOf[x] + "<br>");

          }

          // Stop hiding -->

          </SCRIPT>

          這時候就會輸入以下的內容:

          name=Mike

          age=33

          這個例子雖然沒什么用,但是它只是為了向你顯示程序是如何工作的。這些變量現在就可以用在填充表單元素的內容,或者顯示圖片或者創建其它的網頁內容,總之可以實現CGI能實現的內容。

          posted on 2006-08-07 18:17 kelven 閱讀(203) 評論(0)  編輯  收藏 所屬分類: JavaScript
          主站蜘蛛池模板: 交城县| 梁河县| 海门市| 安仁县| 曲松县| 南开区| 信丰县| 虎林市| 潼南县| 申扎县| 舞钢市| 万载县| 益阳市| 井研县| 阳新县| 西城区| 阿克陶县| 澄江县| 定陶县| 麦盖提县| 凉城县| 贵州省| 连江县| 都江堰市| 遂溪县| 神池县| 威远县| 城固县| 虞城县| 大荔县| 虎林市| 富阳市| 横山县| 陵水| 兴隆县| 鄂托克旗| 湘阴县| 鄄城县| 江西省| 长海县| 通渭县|