老莫的笔记本  
  
查看: 1135|回复: 0

保存一个简单的 面向对象编程

[复制链接]

664

主题

880

帖子

5155

积分

超级版主

Rank: 8Rank: 8

积分
5155
发表于 2018-12-27 16:41:39 | 显示全部楼层 |阅读模式
  1. <!DOCTYPE html>
  2. <html lang="zh-CN">
  3.   <head>
  4.     <meta charset="utf-8">
  5.     <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.     <meta name="viewport" content="width=device-width, initial-scale=1">
  7.     <title>Bootstrap 101 Template</title>
  8.    
  9.     <link href="https://cdn.jsdelivr.net/npm/bootstrap@3.3.7/dist/css/bootstrap.min.css" rel="stylesheet">
  10.    
  11.   </head>
  12.   <body>
  13.   <div class="container-fluid" id="lm-box">
  14. <!--     <div class="row">
  15.       <div class="col-md-4 text-right">
  16.         <h5>SKU 名称</h5>
  17.       </div>
  18.       <div class="col-md-8">
  19.           <div class="input-group">
  20.             <span class="input-group-btn">
  21.               <button class="btn btn-default" type="button">
  22.                <span class="glyphicon glyphicon-pencil"></span>
  23.               </button>
  24.             </span>
  25.             <input type="text" class="form-control" name="name" placeholder="请输入SKU名称">
  26.           </div>
  27.       </div>
  28.       <div class="clearfix"></div>
  29.       <div class="col-md-4 text-right">
  30.         <h5>SKU 描述</h5>
  31.       </div>
  32.       <div class="col-md-8">
  33.           <div class="input-group">
  34.             <span class="input-group-btn">
  35.               <button class="btn btn-default" type="button">
  36.                <span class="glyphicon glyphicon-pencil"></span>
  37.               </button>
  38.             </span>
  39.             <input type="text" class="form-control" name="name" placeholder="请输入SKU描述">
  40.           </div>
  41.       </div>
  42.       <div class="clearfix"></div>
  43.       <div class="col-md-4 text-right">
  44.         <h5>单价</h5>
  45.       </div>
  46.       <div class="col-md-8">
  47.           <div class="input-group">
  48.             <span class="input-group-btn">
  49.               <button class="btn btn-default" type="button">
  50.                <span class="glyphicon glyphicon-pencil"></span>
  51.               </button>
  52.             </span>
  53.             <input type="number" class="form-control" name="name" placeholder="单价">
  54.           </div>
  55.       </div>
  56.       <div class="clearfix"></div>
  57.       <div class="col-md-4 text-right">
  58.         <h5>剩余库存</h5>
  59.       </div>
  60.       <div class="col-md-8 ">
  61.           <div class="input-group">
  62.             <span class="input-group-btn">
  63.               <button class="btn btn-default" type="button">
  64.                <span class="glyphicon glyphicon-pencil"></span>
  65.               </button>
  66.             </span>
  67.             <input type="number" class="form-control" name="name" placeholder="剩余库存">
  68.           </div>
  69.       </div>
  70.       <div class="text-right">
  71.         <button type="button" class="btn btn-warning lm-del" ><span class="glyphicon glyphicon-trash"></span>删除</button>
  72.       </div>
  73.     </div>  -->
  74.   </div>
  75.   
  76.   <hr />
  77.   <div class="text-center">
  78.       <button type="button" id="lm-add" lm-data="0" class="btn btn-success"><span class="glyphicon glyphicon-floppy-disk"></span> 新增</button>
  79.   </div>
  80.   
  81.   <script>
  82.       var Lmadd = document.querySelector("#lm-add");
  83.       Lmadd.onclick = function(){
  84.          // 获取自定义属性 【注意了这个值主要为了计数】
  85.          let a = Number( this.getAttribute('lm-add') ) ;
  86.          let m = new DelBox(a);
  87.          m.render();
  88.          // 赋值
  89.          this.setAttribute('lm-add', a+1);
  90.       }
  91.       function DelBox(k){
  92.         this.k = k;
  93.         this.interarr=[
  94.           {name:'name'+this.k,title:'SKU 名称',type:'text',tell:'请输入SKU名称'},
  95.           {name:'describe'+this.k,title:'SKU 描述',type:'text',tell:'请输入SKU描述'},
  96.           {name:'price'+this.k,title:'单价',type:'number',tell:'请输入单价'},
  97.           {name:'stock'+this.k,title:'剩余库存',type:'text',tell:'请输入剩余库存'}
  98.         ];
  99.         this.innerHTML='      }
  100.       DelBox.prototype.render=function(){
  101.         // 拼装
  102.         for(var i=0; i<this.interarr.length; i++){
  103.           this.innerHTML += '<div class="col-md-4 text-right">'+
  104.                             '<h5>'+this.interarr[i].title+'</h5>'+
  105.                       '</div>'+
  106.                       '<div class="col-md-8">'+
  107.                           '<div class="input-group">'+
  108.                             '<span class="input-group-btn">'+
  109.                               '<button class="btn btn-default" type="button">'+
  110.                                '<span class="glyphicon glyphicon-pencil"></span>'+
  111.                               '</button>'+
  112.                             '</span>'+
  113.                             '<input type="'+this.interarr[i].type+'" class="form-control" name="'+this.interarr[i].name+'" placeholder="'+this.interarr[i].tell+'">'+
  114.                           '</div>'+
  115.                       '</div>'+
  116.                       '<div class="clearfix"></div>        }
  117.         this.element = document.createElement('div');
  118.         this.element.className ="row";
  119.         this.element.innerHTML = this.innerHTML;
  120.         // 删除按钮的父级
  121.         this.delbox = document.createElement('div');
  122.         this.delbox.className = "text-right";
  123.         // 删除按钮 需要的话 自己复制第三句加class 改样式
  124.         this.delBtn = document.createElement('button');
  125.         this.delBtn.className = 'btn';
  126.         this.delBtn.className += " "+'btn-warning lm-del';
  127.         this.delBtn.innerHTML ='<span class="glyphicon glyphicon-trash"></span>删除        this.delbox.appendChild(this.delBtn);
  128.         this.element.appendChild(this.delbox);
  129.      
  130.         this.box = document.querySelector("#lm-box");
  131.         this.box.appendChild(this.element)
  132.         // 删除自身
  133.         var self =this;
  134.         this.delBtn.onclick = function(){
  135.           self.godie();
  136.         }
  137.       }
  138.       // 删除
  139.       DelBox.prototype.godie = function(){
  140.         this.box.removeChild(this.element);
  141.       }
  142.   </script>
  143.   </body>
  144. </html>
复制代码

这是简单的一个 添加商品 的input 选项

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表