正则表达式和表单辅助特效&&淘宝购物车

简介: 正则表达式和表单辅助特效&&淘宝购物车

下拉框的改变事件

<html>
  <head>
    <meta charset="utf-8" />
    <title>下拉框的改变事件</title>
    <script type="text/javascript">
      function $(sid){
        return document.getElementById(sid);
      }
      function myf(){
        //拿到第一个和第二个下拉框
        var aa=$("aa");
        var bb=$("bb");
        //清空第二个下拉框
        bb.length=0;
        //了解几个方法
        // console.log(aa.length,aa.options.length,aa.selectedIndex,aa.value);
        //拿到选中的省份
        var sf=aa.value;
        //判断
        if(sf=="湖南"){
          //往第二个下拉框中添加对应的城市
          bb.add(new Option("长沙市","长沙市"));
          bb.add(new Option("岳阳市","岳阳市"));
          bb.add(new Option("永州市","永州市"));
          bb.add(new Option("衡阳市","衡阳市"));
        }
        else if(sf=="广东"){
          bb.add(new Option("深圳市","深圳市"));
          bb.add(new Option("东莞市","东莞市"));
          bb.add(new Option("广州市","广州市"));
        }
        else if(sf=="浙江"){
          bb.add(new Option("杭州市","杭州市"));
          bb.add(new Option("宁波市","宁波市"));
          bb.add(new Option("嘉兴市","嘉兴市"));
        }
      }
    </script>
  </head>
  <body>
    <select id="aa" onchange="myf()">
      <option value="湖南">湖南省</option>
      <option value="广东">广东省</option>
      <option value="浙江">浙江省</option>
    </select>
    <select id="bb">
      <option>请选择城市</option>
    </select>
  </body>
</html>

                                                      淘宝购物车页面

<html>
  <head>
    <meta charset="utf-8">
    <title>淘宝购物车页面</title>
    <link href="css/myCart.css" type="text/css" rel="stylesheet" />
    <script type="text/javascript">
      //封装
      function $(sid) {
        return document.getElementById(sid);
      }
      //全选
      function myAll(){
        var qx=$("allCheckBox");//拿到全选框
        //根据name值拿到所有其他的复选框
        var cs=document.getElementsByName("cartCheckBox");
        //遍历
        for(var i=0;i<cs.length;i++){
          //让其他复选框的选中状态跟全选框一致
          cs[i].checked=qx.checked;
        }
      }
      //完善全选
      function selectSingle(){
        var qx=$("allCheckBox");//拿到全选框
        //根据name值拿到所有其他的复选框
        var cs=document.getElementsByName("cartCheckBox");
        //假设全选框是选中的
        var f=true;
        //遍历
        for(var i=0;i<cs.length;i++){
          if(cs[i].checked==false){//只有有任何一个复选框没有选中
            f=false;
            break;
          }
        }
        //改变全选框的选中状态
        qx.checked=f;
      }
      //删除单个
      function deleteRow(rid){
        //根据id找到对应行
        var row=$(rid);
        //拿到行下标
        var index=row.rowIndex;
        //根据id找到表格
        var tab=$("shopping");
        //开始删除
        tab.deleteRow(index);
        tab.deleteRow(index-1);//删除上一行
        //刷新价格
        calc();
      }
      //删除所选
      function deleteSelectRow(){
        //根据name值拿到所有其他的复选框
        var cs=document.getElementsByName("cartCheckBox");
        //循环遍历
        for(var i=cs.length-1;i>=0;i--){
          if(cs[i].checked==true){
            //拿其value值=行id 
            var rid=cs[i].value;
            deleteRow(rid);
          }
        }
        /* for(var i=0;i<cs.length;i++){
          if(cs[i].checked==true){
            //拿其value值=行id 
            var rid=cs[i].value;
            deleteRow(rid);
            i--;
          }
        } */
      }
      //改变数量
      function changeNum(rid,type){
        //拿到对应的行
        var row=$(rid);
        //拿到该行所有的列
        var cs=row.cells;
        //拿到第5列第2个孩子的值
        var num=cs[5].childNodes[2].value;
        if(type=="add"){
          num++;
        }
        else{
          if(num>1){
            num--;
          }
          else{
            alert("宝贝数量不能少于1哦");
          }
        }
        cs[5].childNodes[2].value=num;
        calc();
      }
      //计算小计和总价 积分交给你们
      function calc(){
        //拿到表格
        var tab=$("shopping");
        //拿到表格所有行
        var rs=tab.rows;
        var sum=0;
        //循环遍历
        for(var i=3;i<rs.length;i+=2){
          //拿到每一行的所有列
          var cs=rs[i].cells;
          //拿到单价
          var jg=cs[4].innerHTML;
          //拿到数量
          var num=cs[5].childNodes[2].value;
          //计算小计
          var xj=jg*num;
          //给第6列赋值
          cs[6].innerHTML=xj;
          sum+=xj;
        }
        $("total").innerHTML=sum;
      }
      window.onload=calc;
    </script>
  </head>
  <body>
    <div id="header"><img src="images/taobao_logo.gif" alt="logo" /></div>
    <div id="nav">您的位置:<a href="#">首页</a> > <a href="#">我的淘宝</a> > 我的购物车</div>
    <div id="navlist">
      <ul>
        <li class="navlist_red_left"></li>
        <li class="navlist_red">1. 查看购物车</li>
        <li class="navlist_red_arrow"></li>
        <li class="navlist_gray">2. 确认订单信息</li>
        <li class="navlist_gray_arrow"></li>
        <li class="navlist_gray">3. 付款到支付宝</li>
        <li class="navlist_gray_arrow"></li>
        <li class="navlist_gray">4. 确认收货</li>
        <li class="navlist_gray_arrow"></li>
        <li class="navlist_gray">5. 评价</li>
        <li class="navlist_gray_right"></li>
      </ul>
    </div>
    <div id="content">
      <table width="100%" border="0" cellspacing="0" cellpadding="0" id="shopping">
        <form action="" method="post" name="myform">
          <tr>
            <td class="title_1"><input id="allCheckBox" type="checkbox" value="" onclick="myAll()" />全选</td>
            <td class="title_2" colspan="2">店铺宝贝</td>
            <td class="title_3">获积分</td>
            <td class="title_4">单价(元)</td>
            <td class="title_5">数量</td>
            <td class="title_6">小计(元)</td>
            <td class="title_7">操作</td>
          </tr>
          <tr>
            <td colspan="8" class="line"></td>
          </tr>
          <tr>
            <td colspan="8" class="shopInfo">店铺:<a href="#">纤巧百媚时尚鞋坊</a> 卖家:<a href="#">纤巧百媚</a> <img src="images/taobao_relation.jpg"
               alt="relation" /></td>
          </tr>
          <tr id="product1">
            <td class="cart_td_1"><input name="cartCheckBox" type="checkbox" value="product1" onclick="selectSingle()" /></td>
            <td class="cart_td_2"><img src="images/taobao_cart_01.jpg" alt="shopping" /></td>
            <td class="cart_td_3"><a href="#">日韩流行风时尚美眉最爱独特米字拼图金属坡跟公主靴子黑色</a><br />
              颜色:棕色 尺码:37<br />
              保障:<img src="images/taobao_icon_01.jpg" alt="icon" /></td>
            <td class="cart_td_4">5</td>
            <td class="cart_td_5">138</td>
            <td class="cart_td_6"><img src="images/taobao_minus.jpg" alt="minus" onclick="changeNum('product1','minus')"
               class="hand" /> <input type="text" value="1" class="num_input" readonly="readonly" /> <img src="images/taobao_adding.jpg"
               alt="add" onclick="changeNum('product1','add')" class="hand" /></td>
            <td class="cart_td_7"></td>
            <td class="cart_td_8"><a href="javascript:deleteRow('product1');">删除</a></td>
          </tr>
          <tr>
            <td colspan="8" class="shopInfo">店铺:<a href="#">香港我的美丽日记</a> 卖家:<a href="#">lokemick2009</a> <img src="images/taobao_relation.jpg"
               alt="relation" /></td>
          </tr>
          <tr id="product2">
            <td class="cart_td_1"><input name="cartCheckBox" type="checkbox" value="product2" onclick="selectSingle()" /></td>
            <td class="cart_td_2"><img src="images/taobao_cart_02.jpg" alt="shopping" /></td>
            <td class="cart_td_3"><a href="#">chanel/香奈尔/香奈尔炫亮魅力唇膏3.5g</a><br />
              保障:<img src="images/taobao_icon_01.jpg" alt="icon" /> <img src="images/taobao_icon_02.jpg" alt="icon" /></td>
            <td class="cart_td_4">12</td>
            <td class="cart_td_5">265</td>
            <td class="cart_td_6"><img src="images/taobao_minus.jpg" alt="minus" onclick="changeNum('product2','minus')"
               class="hand" /> <input type="text" value="1" class="num_input" readonly="readonly" /> <img src="images/taobao_adding.jpg"
               alt="add" onclick="changeNum('product2','add')" class="hand" /></td>
            <td class="cart_td_7"></td>
            <td class="cart_td_8"><a href="javascript:deleteRow('product2');">删除</a></td>
          </tr>
          <tr>
            <td colspan="8" class="shopInfo">店铺:<a href="#">实体经营</a> 卖家:<a href="#">林颜店铺</a> <img src="images/taobao_relation.jpg"
               alt="relation" /></td>
          </tr>
          <tr id="product3">
            <td class="cart_td_1"><input name="cartCheckBox" type="checkbox" value="product3" onclick="selectSingle()" /></td>
            <td class="cart_td_2"><img src="images/taobao_cart_03.jpg" alt="shopping" /></td>
            <td class="cart_td_3"><a href="#">蝶妆海晳蓝清滢粉底液10#(象牙白)</a><br />
              保障:<img src="images/taobao_icon_01.jpg" alt="icon" /> <img src="images/taobao_icon_02.jpg" alt="icon" /></td>
            <td class="cart_td_4">3</td>
            <td class="cart_td_5">85</td>
            <td class="cart_td_6"><img src="images/taobao_minus.jpg" alt="minus" onclick="changeNum('product3','minus')"
               class="hand" /> <input id="num_3" type="text" value="1" class="num_input" readonly="readonly" /> <img src="images/taobao_adding.jpg"
               alt="add" onclick="changeNum('product3','add')" class="hand" /></td>
            <td class="cart_td_7"></td>
            <td class="cart_td_8"><a href="javascript:deleteRow('product3');">删除</a></td>
          </tr>
          <tr>
            <td colspan="8" class="shopInfo">店铺:<a href="#">红豆豆的小屋</a> 卖家:<a href="#">taobao豆豆</a> <img src="images/taobao_relation.jpg"
               alt="relation" /></td>
          </tr>
          <tr id="product4">
            <td class="cart_td_1"><input name="cartCheckBox" type="checkbox" value="product4" onclick="selectSingle()" /></td>
            <td class="cart_td_2"><img src="images/taobao_cart_04.jpg" alt="shopping" /></td>
            <td class="cart_td_3"><a href="#">相宜促销专供 大S推荐 最好用的LilyBell化妆棉</a><br />
              保障:<img src="images/taobao_icon_01.jpg" alt="icon" /></td>
            <td class="cart_td_4">12</td>
            <td class="cart_td_5">12</td>
            <td class="cart_td_6"><img src="images/taobao_minus.jpg" alt="minus" onclick="changeNum('product4','minus')"
               class="hand" /> <input id="num_4" type="text" value="2" class="num_input" readonly="readonly" /> <img src="images/taobao_adding.jpg"
               alt="add" onclick="changeNum('product4','add')" class="hand" /></td>
            <td class="cart_td_7"></td>
            <td class="cart_td_8"><a href="javascript:deleteRow('product4');">删除</a></td>
          </tr>
          <tr>
            <td colspan="3"><a href="javascript:deleteSelectRow()"><img src="images/taobao_del.jpg" alt="delete" /></a></td>
            <td colspan="5" class="shopend">商品总价(不含运费):<label id="total" class="yellow"></label> 元<br />
              可获积分 <label class="yellow" id="integral"></label> 点<br />
              <input name=" " type="image" src="images/taobao_subtn.jpg" /></td>
          </tr>
        </form>
      </table>
    </div>
  </body>
</html>


相关文章
|
9月前
|
JavaScript 数据格式
JS中操作表单元素与正则表达式校验表单
JS中操作表单元素与正则表达式校验表单
52 0
|
10月前
vue3 表单中使用正则表达式
在Vue3中,可以使用正则表达式来验证表单输入字段的格式。以下是一个例子: 首先,定义一个正则表达式:
258 0
|
12天前
|
前端开发 数据安全/隐私保护
vue3表单参数校验+正则表达式
vue3表单参数校验+正则表达式
|
9月前
|
XML 存储 数据采集
如何使用Python和正则表达式处理XML表单数据
如何使用Python和正则表达式处理XML表单数据
|
1月前
|
Python
Python 内置正则表达式库re的使用
正则表达式是记录文本规则的代码,用于查找和处理符合特定规则的字符串。在Python中,常通过原生字符串`r&#39;string&#39;`表示。使用`re.compile()`创建正则对象,便于多次使用。匹配字符串有`match()`(从开头匹配)、`search()`(搜索首个匹配)和`findall()`(找所有匹配)。替换字符串用`sub()`,分割字符串则用`split()`。
37 3
|
1月前
|
Python Windows
【Python进阶必备】一文掌握re库:实战正则表达式
【Python进阶必备】一文掌握re库:实战正则表达式
30 0
|
5天前
|
Python
Python使用正则表达式分割字符串
在Python中,你可以使用re模块的split()函数来根据正则表达式分割字符串。这个函数的工作原理类似于Python内置的str.split()方法,但它允许你使用正则表达式作为分隔符。
|
8天前
|
SQL 算法 数据挖掘
leetCode第十题 : 正则表达式匹配 动态规划【10/1000 python】
leetCode第十题 : 正则表达式匹配 动态规划【10/1000 python】
|
11天前
|
数据采集 监控 Python
Python新手必看:正则表达式入门到精通只需这一篇!
了解 Python 中的正则表达式,用于高效处理字符串。导入 `re` 模块,用 `r` 前缀避免转义困扰。示例:`re.split` 切分字符串,`re.findall` 进行匹配与查找,数量词如 `*`, `+`, `?` 控制匹配次数,边界匹配定位开始或结束。使用 `group` 和 `sub` 进行组合操作,解决复杂文本处理问题。正则表达式是字符串处理的利器,助你轻松应对各种场景。
12 0