学生后台管理系统(简易版)

 <h1>学生管理</h1>
    <div>
        <label for="stuName">学生姓名:</label><input type="text" name="stuName" id="stuName">
    </div>

    <div>
        <label for="stuAge">学生年龄:</label><input type="text" name="stuAge" id="stuAge">
    </div>
    <div>
        <label for="">学生性别:</label>
        <label for="male"></label>
        <input type="radio" name="stuGender" id="male" checked value="男">
        <label for="female"></label>
        <input type="radio" name="stuGender" id="female"  value="女">
    </div>
    <div>
        <label for="stuScore">考试成绩:</label><input type="text" name="stuScore" id="stuScore">
    </div>
    <button type="" id="addStu">添加学生</button>
    <tr>
      
    </tr>
    <table id="stuInfo" border="1" cellspacing="0"></table>
    <script>
        let tab=document.getElementById("stuInfo");
        let addStu=document.getElementById("addStu");
        let stuName=document.getElementById("stuName");
        let stuAge=document.getElementById("stuAge");
        let stuScore=document.getElementById("stuScore");
        let stuGender=document.getElementsByName("stuGender");
        let index=null;

        let stuInfo =null;

        let render=function(stuInfo){
            tab.innerHTML="";
            if(stuInfo.length!==0){
                let thead='<tr><th>学生姓名</th><th>学生年龄</th><th>学生性别</th><th>考试成绩</th><th>操作</th></tr>';
                let tbody='';
                for(let i=0;i<stuInfo.length;i++){
                    tbody +=`<tr>
                                <td>${stuInfo[i].stuName}</td>
                                <td>${stuInfo[i].stuAge}</td>
                                <td>${stuInfo[i].stuGender}</td>
                                <td>${stuInfo[i].stuScore}</td>
                                <td><button onclick=editStu(${i})>修改</button><button onclick=delStu(${i})>删除</button></td>
                            </tr>`;
                }
                tab.innerHTML+=thead+tbody;
            }
            else{
                tab.innerHTML="";
            }

        }


        let typeChange=function(a){
            if(Array.isArray(a)){
                let obj={};
                for(let key in a){
                    obj[key]=a[key];
                }
                return obj;

            }
            else{
                let arr=[];
                for(let key in a){
                arr[key]=a[key];
                }
                return arr;
            }
          
        }

        window.onload=function(){
            if(localStorage.stuInfo ===undefined){
                let info ={
                    0:{'stuName':'谢杰','stuAge':18,'stuGender':'','stuScore':100},
                    1:{'stuName':'雅静','stuAge':20,'stuGender':'','stuScore':99},
                    2:{'stuName':'希之','stuAge':23,'stuGender':'','stuScore':89},
                }
                localStorage.stuInfo=JSON.stringify(info);
                stuInfo=typeChange(info);
            }
            else{
                stuInfo =typeChange(JSON.parse(localStorage.stuInfo))
            }
            render(stuInfo);
        }


        let makeNewStu=function(){
            let stuGenderValue=null;
            for(let i=0;i<stuGender.length;i++){
                if(stuGender[i].checked ===true){
                    stuGenderValue=stuGender[i].value;
                }
            }

            let newStu={'stuName':stuName.value,'stuAge':stuAge.value,'stuGender':stuGenderValue,'stuScore':stuScore.value}
            return newStu;
        }

        //添加学生
        addStu.addEventListener("click",function(){
            if(addStu.innerHTML ==="添加学生"){
                if(stuName.value===''||stuAge.value===''||stuGender===''){
                    alert("信息不能为空");
                }
                else{
                    let newStu=makeNewStu();

                    stuInfo.push(newStu);

                    render(stuInfo);
                    localStorage.stuInfo =JSON.stringify(typeChange(stuInfo));

                    stuName.value='';
                    stuAge.value='';
                    stuGender[0].checked=true;
                    stuScore.value='';
                }

            }
            else{
                let newInfo = makeNewStu();
                stuInfo.splice(index,1,newInfo);
                render(stuInfo);
                localStorage.stuInfo=JSON.stringify(typeChange(stuInfo));
                addStu.innerHTML='添加学生';
                stuName.value='';
                stuAge.value='';
                stuGender[0].checked=true;
                stuScore.value='';
            }
        },false);
        //删除学生
        let delStu=function(i){
            if(window.confirm('确认是否要删除此学生')){
                stuInfo.splice(i,1);
                render(stuInfo);
                localStorage.stuInfo=JSON.stringify(typeChange(stuInfo));
            }
        }
        //修改
        let editStu=function(i){
            addStu.innerHTML='确认修改';
            stuName.value=stuInfo[i].stuName;
            stuAge.value=stuInfo[i].stuAge;
            if(stuInfo[i].stuGender===''){
                stuGender[0].checked=true;
            }
            else{
                stuGender[1].checked=true;
            }
            stuScore.value=stuInfo.stuScore;
            index=i;
        }
    </script>

 

<h1>学生管理</h1>
<div>
<label for="stuName">学生姓名:</label><input type="text" name="stuName" id="stuName">
</div>

<div>
<label for="stuAge">学生年龄:</label><input type="text" name="stuAge" id="stuAge">
</div>
<div>
<label for="">学生性别:</label>
<label for="male"></label>
<input type="radio" name="stuGender" id="male" checked value="男">
<label for="female"></label>
<input type="radio" name="stuGender" id="female" value="女">
</div>
<div>
<label for="stuScore">考试成绩:</label><input type="text" name="stuScore" id="stuScore">
</div>
<button type="" id="addStu">添加学生</button>
<tr>
 
</tr>
<table id="stuInfo" border="1" cellspacing="0"></table>
<script>
let tab=document.getElementById("stuInfo");
let addStu=document.getElementById("addStu");
let stuName=document.getElementById("stuName");
let stuAge=document.getElementById("stuAge");
let stuScore=document.getElementById("stuScore");
let stuGender=document.getElementsByName("stuGender");
let index=null;

let stuInfo =null;

let render=function(stuInfo){
tab.innerHTML="";
if(stuInfo.length!==0){
let thead='<tr><th>学生姓名</th><th>学生年龄</th><th>学生性别</th><th>考试成绩</th><th>操作</th></tr>';
let tbody='';
for(let i=0;i<stuInfo.length;i++){
tbody +=`<tr>
<td>${stuInfo[i].stuName}</td>
<td>${stuInfo[i].stuAge}</td>
<td>${stuInfo[i].stuGender}</td>
<td>${stuInfo[i].stuScore}</td>
<td><button onclick=editStu(${i})>修改</button><button onclick=delStu(${i})>删除</button></td>
</tr>`;
}
tab.innerHTML+=thead+tbody;
}
else{
tab.innerHTML="";
}

}


let typeChange=function(a){
if(Array.isArray(a)){
let obj={};
for(let key in a){
obj[key]=a[key];
}
return obj;

}
else{
let arr=[];
for(let key in a){
arr[key]=a[key];
}
return arr;
}
 
}

window.onload=function(){
if(localStorage.stuInfo ===undefined){
let info ={
0:{'stuName':'谢杰','stuAge':18,'stuGender':'男','stuScore':100},
1:{'stuName':'雅静','stuAge':20,'stuGender':'女','stuScore':99},
2:{'stuName':'希之','stuAge':23,'stuGender':'男','stuScore':89},
}
localStorage.stuInfo=JSON.stringify(info);
stuInfo=typeChange(info);
}
else{
stuInfo =typeChange(JSON.parse(localStorage.stuInfo))
}
render(stuInfo);
}


let makeNewStu=function(){
let stuGenderValue=null;
for(let i=0;i<stuGender.length;i++){
if(stuGender[i].checked ===true){
stuGenderValue=stuGender[i].value;
}
}

let newStu={'stuName':stuName.value,'stuAge':stuAge.value,'stuGender':stuGenderValue,'stuScore':stuScore.value}
return newStu;
}

//添加学生
addStu.addEventListener("click",function(){
if(addStu.innerHTML ==="添加学生"){
if(stuName.value===''||stuAge.value===''||stuGender===''){
alert("信息不能为空");
}
else{
let newStu=makeNewStu();

stuInfo.push(newStu);

render(stuInfo);
localStorage.stuInfo =JSON.stringify(typeChange(stuInfo));

stuName.value='';
stuAge.value='';
stuGender[0].checked=true;
stuScore.value='';
}

}
else{
let newInfo = makeNewStu();
stuInfo.splice(index,1,newInfo);
render(stuInfo);
localStorage.stuInfo=JSON.stringify(typeChange(stuInfo));
addStu.innerHTML='添加学生';
stuName.value='';
stuAge.value='';
stuGender[0].checked=true;
stuScore.value='';
}
},false);
//删除学生
let delStu=function(i){
if(window.confirm('确认是否要删除此学生')){
stuInfo.splice(i,1);
render(stuInfo);
localStorage.stuInfo=JSON.stringify(typeChange(stuInfo));
}
}
//修改
let editStu=function(i){
addStu.innerHTML='确认修改';
stuName.value=stuInfo[i].stuName;
stuAge.value=stuInfo[i].stuAge;
if(stuInfo[i].stuGender==='男'){
stuGender[0].checked=true;
}
else{
stuGender[1].checked=true;
}
stuScore.value=stuInfo.stuScore;
index=i;
}
</script>
posted @ 2019-09-12 16:01  在人间凑数的日子_zhy  阅读(832)  评论(0编辑  收藏  举报