购物车的前台管理程序---只与服务器交互一次(二、javascript部分)

来源:互联网 发布:html5动画软件 编辑:程序博客网 时间:2024/04/29 17:41
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>

cart.js


请存为cart.js,并且和前部分html放在同一个目录中

//------------------------------------------------------------------------------
//
// file name :       cart.js
//
// description:      购物车前台用javascript 函数库
//
// function list :   on_cancel(txtamount , txtsum)---- 取消该项
//                   on_update()                  ---- 更新数量
//                   on_del()                     ---- 全部删除
//                   updatedate()                 ---- 更新表单显示
//                   round()                      ---- 四舍五入取指定小数位数
//
// aurthor:          liuyunpeng
//
// date:             2000/09/03
//
// history:          2000/09/03 version 1.0
//
//------------------------------------------------------------------------------


//----------------code begin here------------------------------------------

  function on_cancel(txtamount , txtsum)
    {
      txtamount.value = 0 ;
      txtsum.value = 0 ;
      updatedata();      
    }

  //更新表单显示
  function updatedata()
    {
      var m_aamount   = new array() ;
      var m_aprice    = new array() ;
      var m_adiscount = new array() ;
      var m_asum      = new array() ;
      var m_numtotal  = 0 ;
      var i , j , k  , m;
      i = 0 ;
      j = 0 ;
      k = 0 ;
      m = 0 ;
      
      //求数量
      for (i = 0 ; i < document.frmorder .elements .length ; i ++ )
        {
           if (frmorder.elements [i].name.substring(0 , 9) == "txtamount")
             {
               m_aamount[j] = frmorder.elements [i].value ;
               j ++ ;
             }
           if (frmorder.elements [i].name.substring(0 , 14) == "txtticketprice")
             {
              
              m_aprice[k] = round(frmorder.elements[i].value , 2) ;
              k ++ ;
             }
           if (frmorder.elements [i].name.substring(0 , 14) == "hidticketdisco")
             {
              m_adiscount[m] = frmorder.elements[i].value ;
              m ++ ;
             }
         }
         
      for ( i = 0 ; i < k ; i ++)
         {
           m_asum[i] = round(m_aprice[i] * m_aamount[i] * m_adiscount[i] / 100 , 2);
           
         }
                 
                  
      //更新form
      j = 0 ;
      for (i = 0 ; i < document.frmorder .elements .length ; i ++ )
        {
           if (frmorder.elements [i].name.substring(0 , 6) == "txtsum")
             {
               frmorder.elements [i].value = m_asum[j] ;
               m_numtotal = round(m_numtotal + m_asum[j] , 2);
               j ++ ;
             }
             
         }
       
      document.frmorder .txttotal .value = m_numtotal ;
         
      return 0;              
   }       

  //更新数量
  function on_update()
    {
    
      if (document.frmorder .btnupdate .value == "修改数量")
         {
          document.frmorder .btnupdate .value = "更新数量"
          for (var i=0 ; i < frmorder.elements.length ; i++)
             {
               if (frmorder.elements [i].name.substring(0 , 9) == "txtamount")
                 {

                   frmorder.elements [i].disabled = false ;
                   frmorder.elements[i].style.borderstyle   = "ridge ";
                   document.frmorder .btnbuy .disabled      = true ;
                   document.frmorder .btncancel .disabled   = true ;
                   document.frmorder .btncontinue .disabled = true ;
                   document.frmorder .btndel .disabled      =true ;
                 }  
              
              }
          }
      else
         {
          //alert(document.frmorder .btnupdate .value) ;
          document.frmorder .btnupdate .value = "修改数量"
          var j = 0 ;
          var m_aprice = new array();
          var m_aamount = new array() ;
          for (var i=0 ; i < frmorder.elements.length ; i++)
             {
               if (frmorder.elements [i].name.substring(0 , 9) == "txtamount")
                 {

                   frmorder.elements [i].disabled           = true ;
                   frmorder.elements[i].style.borderstyle   = "none";
                   document.frmorder .btnbuy .disabled      = false ;
                   document.frmorder .btncancel .disabled   = false ;
                   document.frmorder .btncontinue .disabled = false ;
                   document.frmorder .btndel .disabled      = false ;
                 }
              }
          }
                 
      updatedata() ;  
    }       

//全部删除
function on_del()
    {
     for (var i=0 ; i < frmorder.elements.length ; i++)
        {
         if (frmorder.elements [i].name.substring(0 , 9) == "txtamount")
           {
            frmorder.elements [i].value = 0 ;
           }
        }
      
     updatedata();
    }   
   
   //继续购物
   function on_continue()
     {
      document.frmorder.submit();
     }
   
   //区收银台
   function on_buy()
     {
      document.frmorder.submit();
     }
   
   //四舍五入,保留制定小数位数     
   function round(a_num , a_bit)
    {
      return( math.round(a_num * math.pow (10 , a_bit)) / math.pow(10 , a_bit))  ;
    }          
    
//---------------------code end-------------------------------------------------------
<<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 728x15, 创建于 08-4-23MSDN */google_ad_slot = "3624277373";google_ad_width = 728;google_ad_height = 15;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
<script type="text/javascript"><!--google_ad_client = "pub-2947489232296736";/* 160x600, 创建于 08-4-23MSDN */google_ad_slot = "4367022601";google_ad_width = 160;google_ad_height = 600;//--></script><script type="text/javascript"src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
原创粉丝点击