posts - 22,comments - 35,trackbacks - 0

          使用javascript代替CGI

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

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

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

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

          <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>

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

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

          <SCRIPT language="javascript">

          <!-- Hide from older browsers


          for (var x in valueOf) {

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

          }

          // Stop hiding -->

          </SCRIPT>

          這時候就會輸入以下的內(nèi)容:

          name=Mike

          age=33

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

          posted on 2006-08-07 18:17 kelven 閱讀(208) 評論(0)  編輯  收藏 所屬分類: JavaScript
          主站蜘蛛池模板: 淳安县| 赞皇县| 阿城市| 柳林县| 陵川县| 车险| 三穗县| 临湘市| 乌鲁木齐县| 芮城县| 胶南市| 呈贡县| 新宾| 南通市| 黄石市| 化州市| 赤水市| 黄龙县| 丁青县| 含山县| 桃源县| 河南省| 丘北县| 商丘市| 商洛市| 资源县| 大洼县| 巍山| 旬阳县| 瑞丽市| 长沙市| 临汾市| 毕节市| 阳高县| 城口县| 莎车县| 泰安市| 甘洛县| 喀什市| 靖宇县| 广水市|