<table width="600" border="1" align="center" style="text-align:center;">

  <tr>
    <td width="102"><input type="checkbox" id="all"/>全选</td>
    <td width="203">商品</td>
    <td width="119">单价</td>
    <td width="148">数量</td>
  </tr>
  <tr>
    <td><input type="checkbox" id="qianbi"/></td>
    <td>铅笔</td>
    <td>1.5元/支</td>
    <td><input type="text" id="qianbi_t" value="1" /></td>
  </tr>
  <tr>
    <td><input type="checkbox" id="yuanzhu" value="" /></td>
    <td>圆珠笔</td>
    <td>2.5元/支</td>
    <td><input type="text" id="yuanzhu_t" value="1" /></td>
  </tr>
  <tr>
    <td><input type="checkbox" id="gangbi" value="" /></td>
    <td>钢笔</td>
    <td>3元/支</td>
    <td><input type="text" id="gangbi_t" value="1" /></td>
  </tr>
  <tr>
    <td colspan="4">金额合计:<span id="m" style="color:#F00;"></span>元&nbsp;&nbsp;&nbsp;&nbsp;<button>提交订单</button></td>
  </tr>
</table>
<script type="text/javascript">
    var all=document.getElementById("all");
    var qianbi=document.getElementById("qianbi");
    var yuanzhubi=document.getElementById("yuanzhu");
    var gangbi=document.getElementById("gangbi");
    var qb_m=0,yzb_m=0,gb_m=0;
    all.onclick=function(){
        if(all.checked){
            qianbi.checked=true;
            yuanzhubi.checked=true;
            gangbi.checked=true;
        }
        else{
            qianbi.checked=false;
            yuanzhubi.checked=false;
            gangbi.checked=false;
        }
        sub();
    };
    qianbi.onclick=function(){sub()};
    yuanzhubi.onclick=function(){sub()};
    gangbi.onclick=function(){sub()};
    document.getElementById("qianbi_t").addEventListener("change",function(e){
        sub();
    });
    document.getElementById("yuanzhu_t").addEventListener("change",function(e){
        sub();
    });
    document.getElementById("gangbi_t").addEventListener("change",function(e){
        sub();
    });
    function sub(){
        if(qianbi.checked){
            qb_m=document.getElementById("qianbi_t").value*1.5
        }
        else{
            qb_m=0;
            all.checked=false;
        }
        if(yuanzhubi.checked){
            yzb_m=document.getElementById("yuanzhu_t").value*2.5
        }
        else{
            yzb_m=0;
            all.checked=false;
        }
        if(gangbi.checked){
            gb_m=document.getElementById("gangbi_t").value*3
        }
        else{
            gb_m=0;
            all.checked=false;
        }
        var sum=qb_m+yzb_m+gb_m;
        document.getElementById("m").innerHTML=sum;
    }
</script>

js表单计算金额问题的更多相关文章

  1. js表单验证工具包

    常用的js表单验证方法大全 /* 非空校验 : isNull() 是否是数字: isNumber(field) trim函数: trim() lTrim() rTrim() 校验字符串是否为空: ch ...

  2. JS表单验证-12个常用的JS表单验证

    JS表单验证-12个常用的JS表单验证 最近有个项目用到了表单验证,小编在项目完结后的这段时间把常用的JS表单验证demo整理了一下,和大家一起分享~~~ 1. 长度限制 <p>1. 长度 ...

  3. js 表单验证控制代码大全

    js表单验证控制代码大全 关键字:js验证表单大全,用JS控制表单提交 ,javascript提交表单:目录:1:js 字符串长度限制.判断字符长度 .js限制输入.限制不能输入.textarea 长 ...

  4. node.js表单——formidable/////z

    node.js表单--formidable   node处理表单请求,需要用到formidable包.安装formidable包的命令如下: npm install formidable 安装pack ...

  5. js表单提交,面向对象

    一.js表单验证之后再提交 1.普通按钮onclick函数调用表单的submit()函数 <input type=button name="submit1" value=&q ...

  6. jquery.validation.js 表单验证

    jquery.validation.js 表单验证   官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation jQuer ...

  7. Jquery.validate.js表单验证插件的使用

    作为一个网站web开发人员,以前居然不知道还有表单验证这样好呀的插件,还在一行行写表单验证,真是后悔没能早点知道他们的存在. 最近公司不忙,自己学习一些东西的时候,发现了validation的一个实例 ...

  8. angular js 表单验证

    <!doctype html> <html ng-app="myapp"> <head> <meta charset="UTF- ...

  9. JS表单验证类HTML代码实例

    以前用的比较多的一个JS表单验证类,对于个人来说已经够用了,有兴趣的可以在此基础上扩展成ajax版本.本表单验证类囊括了密码验证.英文4~10个 字符验证. 中文非空验证.大于10小于100的数字.浮 ...

随机推荐

  1. ClickAndMoveTest

    关于ccTouchesEnded看这个博客即可 http://blog.linguofeng.com/archive/2012/09/12/cocos2d-x-touch.html class Cli ...

  2. Ubuntu C/C++开发环境的安装和配置

    安装ubantu会自动安装GCC,但是这个GCC什么文件都不能编译,因为没有一些必须的头文件,所以要安装build-essential这个软件包,安装了这个包会自动安装上g++,libc6-dev,l ...

  3. cocos2d-xV3.0rc 环境搭建

    一.下载 由于www.cocos2d-x.org很难打开,不知道是不是电信的问题,所以只好在cocoschina论坛里王哲大牛的帖子里找到了一个下载链接:http://126.am/GyU7l0 帖子 ...

  4. DNS劫持和DNS污染

    DNS劫持和DNS污染1.DNS劫持通过劫持DNS服务器,修改解析记录,导致对域名的访问转入虚假IP,结果是网站访问失败,窃取资料. 2.DNS污染使用虚假的DNS服务器,伪装成目标域名的解析服务器, ...

  5. 回调形成树形结构tree

    //Tree.vue <template> <li> <span @click="toggle"> <i v-if="isFol ...

  6. hibernate里联合主键composite-id映射,查询单个主键的问题

    今天项目中遇到这个问题,搞了大半天,现在记录下来hibernate里联合主键配置(多个字段一起作为主键) <class name="com.cskj.hibernate.map.BbW ...

  7. 在shell 中字符串,文件,数字的比较

    hadoop fs -test -e /path/exist ] ;then echo 'exist' else echo 'Error! path is not exist' fi 在shell中如 ...

  8. 【Unity笔记】常用的优化小技巧

    一.当通过GetComponent获取一个组件时,不在Update中每帧进行查找,可在Start中查找一次并用一个私有变量去保存这个组件. public class Test : MonoBehavi ...

  9. 各种hash函数

    public class HashAlgorithms { /** * 加法hash * @param key 字符串 * @param prime 一个质数 * @return hash结果 */ ...

  10. Android Activity动画属性简介

    Android Activity动画属性简介 在Android当中 设置activity的动画 需要复写 android:windowAnimationStyle这个属性 我们自定义一个动画样式来继承 ...