教務管理系統加按學號查詢出對應學生信息


function load(){
    loadTable()
}
function loadTable(){
    let tbody = document.querySelector('#tbody');
    let msg=""
    for(let i=0;i<slist.length;i++){
        msg+='<tr>'
        msg+='<td>'+(i+1)+'</td>'
        msg+='<td>'+slist[i].id+'</td>'
        msg+='<td>'+slist[i].name+'</td>'
        msg+='<td>'+slist[i].pwd+'</td>'
        msg+='<td>'+slist[i].sex+'</td>'
        msg+='<td>'+slist[i].address+'</td>'
        msg+='<td>'+getClassNameById(slist[i].classid)+'</td>'
        msg+='<td><a href="javascript:deleteById('+slist[i].id+')">刪除</a> <a href="javascript:updateById('+slist[i].id+')">修改</a> </td>'
        msg+='</tr>'
    }
    // msg放到tbody
    tbody.innerHTML=msg
}
//刪除數據
function deleteById(id) {
    if (confirm('是否確定刪除')){
        let index=getStudentIndexById(id)
        // splice 刪除,數組里面沒有move
        slist.splice(index,1)
        // 刪完之后重新加載表格
        loadTable()
   }
}
function show() {
    let div1=document.getElementById("div1")
    let div2=document.getElementById("div2")

    div1.removeAttribute('hidden')
    div2.removeAttribute('hidden')
}
// 取消時隱藏起div2框
function cancal() {
    let div1=document.getElementById("div1")
    let div2=document.getElementById("div2")

    div1.setAttribute('hidden','')
    div2.setAttribute('hidden','')
}

function addStudent(){
    // 確保點添加的時候取消旁邊是顯示添加
    document.getElementById('btn1').value='添加'
    clear()
    show()
}
//保存和添加按鈕
function save() {
    let id=document.getElementById('sid').value
    let name=document.getElementById('sname').value
    let pwd=document.getElementById('spwd').value
    //兩個單選 getElementsByName按名稱找
    let sexs=document.getElementsByName('sexs')
    let sex='男'
    for (let i=0;i<sexs.length;i++){
        if (sexs[i].checked){
            sex=sexs[i].value
        }
    }
    let address=document.getElementById('address').value
    let classid=document.getElementById('classid').value
    

 //創建對象,上面是給文本框一些新的值,現在創建聲明新的學生並且傳id,name,pwd,sex,address,classid參數進來
    let info=new Student(id,name,pwd,sex,address,classid)
        // 如果是添加的時候那就加,否則是保存(修改)123把第二個元素改了,就把新值賦到第二個元素,第二個元素整體賦值
        if(document.getElementById('btn1').value=='添加'){
            //加入集合 ,加入是加在末尾
            // slist[getStudentIndexById(id)]=info用新的值覆蓋之前的就是修改,對應保存按鈕
            slist[slist.length]=info
         }else{
            slist[getStudentIndexById(id)]=info
        }
    //重新加載table
    loadTable()
    // 關界面
    cancal()
}

function updateById(id) {
    let info=getStudentInfoById(id)
    
    show()
    // 選中要改的id,'disabled',''修改時改其他,學號不能改
    let sid = document.getElementById('sid');
    sid.value=info.id
    sid.setAttribute('disabled','')
    
    // 填充要修改的內容 getElementById根據ID獲取單個對象
    document.getElementById('sname').value=info.name;
    document.getElementById('spwd').value=info.pwd;
    // 'input[name="sexs"][value="'+info.sex+'"]'我是男,你就是男,setAttribute('checked','checked')修改選中的
    document.querySelector('input[name="sexs"][value="'+info.sex+'"]').setAttribute('checked','checked')
    document.getElementById('address').value=info.address
    document.getElementById('classid').value=info.classid
    // 默認點添加按鈕的時候是取消旁邊的 是添加,點編輯時候變成保存
    document.getElementById('btn1').value='保存'
    
    }
    
    
    function onsearchStudent(){
        // 確保點添加的時候取消旁邊是顯示添加
        document.getElementById('btn2').value='查詢'
        clear()
        show()
    }
    function search(){
            // 拿到div2彈框的第一行學號
            let id=document.getElementById('sid').value
            // 通過id找到下標,通過下標找到學生
            let index=getStudentIndexById(id)
            let stu=slist[index]
            // document.getElementById('sname').value 彈框姓名那欄的文本內容
            // document.getElementById('sname').value=stu.name;找到之后把學生的名字賦給名字文本框
            document.getElementById('sname').value=stu.name;
            sname.setAttribute('disabled','')
            document.getElementById('spwd').value=stu.pwd;
            // 'input[name="sexs"][value="'+info.sex+'"]'我是男,你就是男,setAttribute('checked','checked')修改選中的
            document.querySelector('input[name="sexs"][value="'+stu.sex+'"]').setAttribute('checked','checked')
            document.getElementById('address').value=stu.address
            document.getElementById('classid').value=stu.classid
            // 默認點添加按鈕的時候是取消旁邊的 是添加,點編輯時候變成保存
            document.getElementById('btn2').value='查詢'    
    }
    function clear(){
        // js里面""是空 null是類似未定義
        document.getElementById('sid').value=""
        document.getElementById('sname').value=""
        document.getElementById('spwd').value=""
        //getElementsByName根據name屬性獲取多個對象sexs獲取了男女給聲明的list數組,list[0]男 list[0].checked選中的那個
        let list=document.getElementsByName('sexs')
        list[0].checked=false
        list[1].checked=false
        document.getElementById('address').value=""
        document.getElementById('classid').value=""
        
    }


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM