帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > ASP编程
购物车的前台管理程序-只与服务器交互一次(二)
作者: 发布时间:2005-03-12 来源:
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-------------------------------------------------------
  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·购物车的前台管理程序-只与服务器  (2005-03-12)

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·DiscuzX2.5会员整合通行证发布
·帝国CMS 7.0版本功能建议收集
·帝国网站管理系统2012年授权购买说
·PHPWind8.7会员整合通行证发布
·[官方插件]帝国CMS-访问统计插件
·[官方插件]帝国CMS-sitemap插件
·[官方插件]帝国CMS内容页评论AJAX分
   类别最新
·在ASP中使用数据库
·使用ASP脚本技术
·通过启动脚本来感受ASP的力量
·学习使用ASP对象和组件
·解析asp的脚本语言
·初看ASP-针对初学者
·ASP开发10条经验总结
·ASP之对象总结
·ASP与数据库应用(给初学者)
·关于学习ASP和编程的28个观点
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统