熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> JSP教程 >> 正文

在浏覽器上保存數據

2013-11-15 09:49:38  來源: JSP教程 

  JavaScript 能做的事並不局限於訪問HTML 表單的數據它還能讓你創建自己的對象——也就是讓你創建儲存於客戶端的數據你甚至還能建立包含其它對象的對象
為什麼需要這些功能?一個好的理由就是創建數組(array)簡單來說數組是一個含有幾組相關信息的表格或數據庫在下面的例子當中我們定義了一個叫做taxTable的對象該對象包含一個數組而該數組由五個 name 對象實例所組成這個數組保存五個州的州名以及它們相關的稅率然後當用戶在訂購表單中輸入州名時我們就在數組中檢查它並自動應用正確的稅率
創建一個x的數組與使用一個快速的 ifthen 序列來測試州名相比使用數組似乎還要做額外的工作不過隨著條目個數的增加數組的功能也就變得愈來愈強大不妨想象有一個擁有五十個州或五百個銷售區亦或是五千個城市的表格有了一個數組你就能夠一次建立條目列表然後每當用戶輸入新數據時就可迅速加以引用這個條目列表
下面這個特殊的JavaScript 代碼開始就像我們的計算(calculation)示例一樣不過這一次我們並不止於簡單的數學計算
function state(stateName stateTax){
  //fill the instance with the values passed in
  thisname=stateName;
  thistax=stateTax;
  //then return the instance of state
  return this;
}


  上面定義的state() 函數創建了包括州名與稅率的一個州(state)的實例然而我們的州此時似乎什麼值都沒有下面我們給它們一些值吧


  function taxTable(){
  //the instance of taxTable is filled with
  //an array of state objects
  this[]=new state(AZ );
  this[]=new state(HI );
  this[]=new state(TX );
  this[]=new state(NJ );
  this[]=new state( );
  //return the newly created taxTable to
  //the calling function
  return this;
}


  現在無論taxTable函數何時被調用我們都創建了五個不同的州實例分別編號為這樣一來我們就創建了一個數組來保存我們所有的稅率信息現在我們需要加以處理一番
functioncalculateTax(stateValue){
  var index=;
  var result=;
  var temp=;
  首先我們定義一個稱為calculateTax的函數calculateTax會以初始化一些變量開始然後它需要從用戶那裡取得一個值
  //while theres an instance of state
  //in the taxGuide array
  while (taxGuide[index])
  {
    //if the state passed in is in the
    //taxGuide array
    if (stateValuetoUpperCase() == taxGuide[index]name) {
      // put the correct tax rate in result
      result = taxGuide[index]tax;
    }
    index++;
  }


  while 循環會持續將用戶的輸入與稅率表中的所有可能的條目進行比較直到比完完全部數據一旦它發現一個匹配(或是沒有匹配)它就將適當的稅率寫入 result 變量中然後我們可以使用該稅率來計算總量然後將其加至我們的總額之中
  {
 calcTotal();
    var temp = documentorderFormtotalPricevalue;
    // calculate total with tax
    var temp = (parseFloat(temp) * ( + parseFloat(result)));
    // chop off extra decimal places
    vartotalWithTax = (Mathround(temp * )) / ;
    // change value in form
    documentorderFormtotalPricevalue =
    totalWithTax;
  }
  上面的代碼計算包括稅金在內的全部費用首先我們設定變量temp 的值等於totalPrice表單元素的值然後我們再計算稅後總額並將其值賦給temp下一行代碼則使用Mathround方法捨去額外的小數位然後將新的總額賦值給totalWithTax變量接下來我們將此總額送回到訂購表單之中


From:http://tw.wingwit.com/Article/program/Java/JSP/201311/19178.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.