一染星辰 2021-09-09 16:15 采纳率: 20%
浏览 58
已结题

帮帮忙,谢啦,用js把它做出来

img


这个用js咋做的呀!我敲打的时候,老是出错,这个应该咋做呀,用JS: 求解。

  • 写回答

4条回答 默认 最新

  • 一染星辰 2021-09-09 18:32
    关注
    学生头像:
            <div>
                <label>
                    姓名:<input type="text" id="username"/>
                </label>
            </div>
            
            <div>
                性别:
                <label>
                    <input type="radio" name="sex" value="0" checked/><input type="radio" name="sex" value="1"/></label>
            </div>
            
            <div>
                年龄:<input type="number" id="age"/>
            </div>
            
            <div>
                <button id="add">添加</button>
            </div>
            
            <table border="1">
                <thead>
                    <tr>
                        <th>序号</th>
                        <th>头像</th>
                        <th>姓名</th>
                        <th>性别</th>
                        <th>年龄</th>
                        <th>创建时间</th>
                        <th>操作</th>
                    </tr>
                </thead>
                <tbody>
                    <!--<tr>
                        <td>1</td>
                        <td><img src="img/1.jpeg"/></td>
                        <td>萨达</td>
                        <td>男</td>
                        <td>21</td>
                        <td>2021年9月9日14:14:26</td>
                        <td><button>删除</button></td>
                    </tr>-->
                </tbody>
            </table>
            <span class="pp">
                暂无数据
            </span>
            
        </div>
        
        <script type="text/javascript">
            //获取Dom
            var imgs = document.querySelectorAll("#d1>img");
            var username = document.querySelector("#username");
            var sexs = document.querySelectorAll("input[type='radio']")
            var age = document.querySelector("#age");
            var add = document.querySelector("#add");
            var tbody = document.querySelector("tbody");
            var pp = document.querySelector(".pp");
            var table = document.querySelector("table");
            //本地存储
            if(localStorage.arr99){
                var arr = JSON.parse(localStorage.arr99);
            }else{
                var arr = [];
                localStorage.arr99 = JSON.stringify([]);
            }
            show(arr);
            //图片切换
            var imgSrc = '';
            
            for(var i=0; i<imgs.length; i++){
                imgs[i].onclick = function(){
                    
                    for(var i=0; i<imgs.length; i++){
                        imgs[i].style.border = "";
                    }
                    this.style.border = "2px solid black"
                    imgSrc = this.getAttribute("src");
                }
            }
            
            //获取性别值
            function getSex(){
                for(var i=0; i<sexs.length; i++){
                    if(sexs[i].checked){
                        return sexs[i].value;
                    }
                }
            }
            
            //渲染性别值
            function SexFn(value){
                var arr1 = ["男","女"];
                return arr1[value];
            }
            
            //时间渲染
            function getTime(){
                var d = new Date();
                return d.getFullYear()+"-"+
                    numFn(d.getMonth()+1)+"-"+
                    numFn(d.getDate())+" "+
                    numFn(d.getHours())+":"+
                    numFn(d.getMinutes())+":"+
                    numFn(d.getSeconds())
            }
            //补零
            function numFn(num){
                return num>9 ? num : "0"+num;
            }
            //添加
            add.onclick = function(){
                if(!username.value){
                    alert("请输入姓名")
                    return;
                }else if(!age.value){
                    alert("请输入年龄")
                    return;
                }else if(imgSrc == ''){
                    alert("请选择头像");
                    username.value = age.value = "";
                    return;
                }
                arr.push({
                    img : imgSrc,
                    username : username.value,
                    sex : getSex(),
                    age : age.value,
                    time : getTime(),
                    id : new Date().getTime() 
                })
                for(var i=0; i<imgs.length; i++){
                    imgs[i].style.border = "";
                }
                imgSrc = '';
                sexs[0].checked = true;
                username.value = age.value = "";
                localStorage.arr99 = JSON.stringify(arr);
                show(arr);
            }
            
            //渲染
            function show(arr){
                if(arr.length == 0){
                    pp.style.display = "block";
                    table.style.display = "none";
                }else{
                    pp.style.display = "none";
                    table.style.display = "table";
                }
                tbody.innerHTML = '';
                for(var i=0; i<arr.length; i++){
                    tbody.innerHTML +=`
                        <tr>
                        <td>${i+1}</td>
                        <td><img src="${arr[i].img}"/></td>
                        <td>${arr[i].username}</td>
                        <td>${SexFn(arr[i].sex)}</td>
                        <td>${arr[i].age}</td>
                        <td>${arr[i].time}</td>
                        <td><button onclick = "delFn(${arr[i].id})">删除</button></td>
                    </tr>
                    `;
                }
            }
            
            //删除
            function delFn(id){
                for(var i=0; i<arr.length; i++){
                    if(arr[i].id == id){
                        arr.splice(i,1);
                    }
                }
                localStorage.arr99 = JSON.stringify(arr);
                show(arr);
            }
        </script>
    </body>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 9月17日
  • 已采纳回答 9月9日
  • 创建了问题 9月9日

悬赏问题

  • ¥20 java在应用程序里获取不到扬声器设备
  • ¥15 echarts动画效果的问题,请帮我添加一个动画。不要机器人回答。
  • ¥60 许可证msc licensing软件报错显示已有相同版本软件,但是下一步显示无法读取日志目录。
  • ¥15 Attention is all you need 的代码运行
  • ¥15 一个服务器已经有一个系统了如果用usb再装一个系统,原来的系统会被覆盖掉吗
  • ¥15 使用esm_msa1_t12_100M_UR50S蛋白质语言模型进行零样本预测时,终端显示出了sequence handled的进度条,但是并不出结果就自动终止回到命令提示行了是怎么回事:
  • ¥15 前置放大电路与功率放大电路相连放大倍数出现问题
  • ¥30 关于<main>标签页面跳转的问题
  • ¥80 部署运行web自动化项目
  • ¥15 腾讯云如何建立同一个项目中物模型之间的联系