2019-08-25

前端 管理員界面html和js

<html>
<head>
    <title>圖書(shū)管理系統(tǒng)</title>
    <meta charset="utf-8" />
    <style type="text/css">
        body{
            background: #D5D5D5;
            background-image:url("http://39.105.124.213/libriaryImg/managerbackground.JPG");
            background-repeat:no-repeat;
            background-attachment: fixed;
            background-size: cover;
        }
        hr{
            color: red;
        }
        .tab{
            border-collapse: collapse;
            margin: auto;
        }
        .tab td{
            padding: 10px;
        }
        h3,.tab,h4{
            text-align: center;
        }
        .searchText{
            padding-left: 20px;
        }
    </style>
</head>
<body >
    <h3>圖書(shū)管理系統(tǒng)</h3>
    <hr/>
    <h4>添加圖書(shū)</h4>
        <table class="tab">
        <tr>
            <td>書(shū)籍id:</td>
            <td><input type="text" id="bookId" name=""></td>
            <td>書(shū)籍名稱:</td>
            <td><input type="text" id="bookName" name=""></td>
        </tr>
        <tr>
            <td>書(shū)籍信息:</td>
            <td><input type="text" id="bookInfo" name=""></td>
            <td>書(shū)籍總數(shù)量:</td>
            <td><input type="text" id="bookTotal" name=""></td>
        </tr>
        <tr>
            <td>按名字查詢書(shū)籍:</td>
            <td><input type="text" id="searchById" ></td>   
            <td>按id查詢書(shū)籍:</td>
            <td><input type="text" id="searchByName" ></td>     
        </tr>
        <tr>
            <td><input type="button" value="添加書(shū)籍" onclick="addBook()" ></td>
            <td><input type="button" value="查詢書(shū)籍" name="" onclick="searchBook()" ></td>
            <td><input type="button" value="刪除選中行" name="" onclick="choseDel()" ></td>
            <td><input type="button" value="修改密碼" onclick="changePwd()" ></td>
            
        </tr>
    </table>    
        <h3>圖書(shū)查詢</h3>
    <hr/>   
    <table border="1" class="tab" id="tab">
        <tr id="t1">
            <td><input type="checkbox" id="checkAll" onclick="choseAll()"></td>
            <td>書(shū)籍id</td>
            <td>書(shū)籍名稱</td>
            <td>書(shū)籍信息:</td>
            <td>書(shū)籍總數(shù)</td>
            <td>書(shū)籍已借出</td>
            <td>書(shū)籍剩余量</td>
            <td>操作</td>
        </tr>
    </table>

    <script type="text/javascript">
        var ip="192.168.43.241:8888";
        var split = "|^|";
        var split2 = "|$|";
        //獲取本地賬號(hào)密碼
        var usr=localStorage.getItem("usr").trim();
        var pwd=localStorage.getItem("pwd").trim();
        //登錄信息
        var str="usr="+usr+"&"+"pwd="+pwd;
        
        //修改密碼
        function changePwd(){
            window.open("http://"+ip+"/change_pwd.html?"+str,"blank");
        }
        //添加書(shū)籍
        function addBook(){
            //獲取要添加的數(shù)據(jù)
            var bookId = document.getElementById('bookId').value.trim();
            var bookName = document.getElementById('bookName').value.trim();
            var bookInfo = document.getElementById('bookInfo').value.trim();
            var bookTotal = document.getElementById('bookTotal').value.trim();
            //判斷數(shù)據(jù)是否為空
            if(bookId == "" || bookId == null){
                alert("書(shū)籍編號(hào)不能為空");
                return;
            }
            if(bookName == "" || bookName == null){
                alert("書(shū)籍名不能為空");
                return;
            }
            if(bookInfo == "" || bookInfo == null){
                alert("書(shū)籍描述不能為空");
                return;
            }
            if(bookTotal == "" || bookTotal == null){
                alert("書(shū)籍總數(shù)量不能為空");
                return;
            }
            //1.創(chuàng)建ajax對(duì)象
            var xhr = new XMLHttpRequest();
            //2.確定參數(shù)(請(qǐng)求方法,請(qǐng)求地址,是否異步)
            var string='&bookId='+bookId;
            string+='&bookName='+bookName;
            string+='&bookInfo='+bookInfo;
            string+='&bookTotal='+bookTotal;
            
            var url="http://"+ip+"/addBook";
            xhr.open('post',url,true);
            //3.發(fā)送請(qǐng)求
            xhr.send(str+string);
            xhr.responseType = 'Text';
            //處理返回結(jié)果
            xhr.onload = function(){
                var result=xhr.response;
                console.log(xhr.status)
                if(xhr.status=="200"){
                     if("addOk"==result){
                        alert("添加成功!!!");
                        addRow(bookId,bookName,bookInfo,bookTotal,bookTotal,0);
                     }else if("bookIdRepeat")   {
                        alert("bookId重復(fù)");
                     }
                }else{
                    document.getElementsByClassName('body').value=result;   
                    document.write(result);
                }
            }
        }
        
        //查詢書(shū)籍
        function searchBook(){
            //獲取要查詢的數(shù)據(jù)
            var bookId = document.getElementById('searchById').value.trim();
            var bookName = document.getElementById('searchByName').value.trim();
            
            //判斷數(shù)據(jù)是否為空
            if((bookId == "" || bookId == null)&&(bookName == "" || bookName == null)){
                alert("書(shū)籍id,或者書(shū)籍名字填且僅填其中一個(gè),其中書(shū)籍名字查詢支持模糊查詢");
                return;
            }else if((bookId != "" && bookId != null)&&(bookName != "" && bookName != null)){
                alert("書(shū)籍id,或者書(shū)籍名字只能填其中一個(gè)");
                return;
            }
            //查詢方式
            var flag=false;
            if("" != bookName && null != bookName){
                var flag=false;
            }else if("" != bookId && null != bookId){
                var flag=true;
            }
            
            //1.創(chuàng)建ajax對(duì)象
            var xhr = new XMLHttpRequest();
            //2.確定參數(shù)(請(qǐng)求方法,請(qǐng)求地址,是否異步)
            var url;
            var string;
            if(flag){
                url="http://"+ip+"/searchByName";   
                string="&bookName="+bookId;
            }else{
                url="http://"+ip+"/searchById";     
                string="&bookId="+bookName;
            }
            xhr.open('post',url,true);
            //3.發(fā)送請(qǐng)求
            xhr.send(str+string);
            xhr.responseType = 'Text';
            //處理返回結(jié)果
            xhr.onload = function(){
                var result=xhr.response;
                console.log(result.trim());
                if(xhr.status=="200"){
                     if("nobook"==result){
                        alert("沒(méi)有結(jié)果!!!");
                     }else{
                         //45&jk&jkk&
                        var array = new Array();
                        array = result.split(split2);
                        removeEmpty(array);
                        console.log(array);
                        for(var i=0;i<array.length;i++){
                            array[i]=array[i].split(split);
                            removeEmpty(array[i]);
                        }
                        addMultipleRow(array);                  
                     }
                }else{
                    console.log(xhr.status)
                    document.getElementsByClassName('body').value=result;   
                    document.write(result);
                }
            }
        }
        //去除數(shù)組中空字符串
        function removeEmpty(array){
            for(var i = 0;i<array.length;i++){
                if(array[i]==''||array[i]==null||typeof(array[i])==undefined){
                    array.splice(i,1);
                    i=i-1;
                }
            }
        }
        
        //添加行
        function addRow(bookId,bookName,bookInfo,bookTotal,bookNum,bookLoan){
            //獲取table對(duì)象
            var tab = document.getElementById('tab');
            //添加行
            var tr = tab.insertRow(1);
            //添加單元格
            var cell0 = tr.insertCell(0);
            cell0.innerHTML = "<input type='checkbox' name='check'>";

            var cell1 = tr.insertCell(1);
            cell1.innerHTML = bookId;

            var cell2 = tr.insertCell(2);
            cell2.innerHTML = bookName;

            var cell3 = tr.insertCell(3);
            cell3.innerHTML = bookInfo;

            var cell4 = tr.insertCell(4);
            cell4.innerHTML = bookTotal;

            var cell5 = tr.insertCell(5);
            cell5.innerHTML = bookNum;
            
            var cell6 = tr.insertCell(6);
            cell6.innerHTML = bookLoan;
            
            var cell7 = tr.insertCell(7);
            cell7.innerHTML = "<input type='button' value='修改' onclick='upadteRow(this)'> <input type='button' value='保存' onclick='upadteDb(this)'>";
        }
        //添加多行
        function addMultipleRow(bookArray){
            delAllRows();
            for(var i=0;i<bookArray.length;i++){
                addRow(bookArray[i][0], bookArray[i][1], bookArray[i][2], bookArray[i][3],bookArray[i][4], bookArray[i][3]-bookArray[i][4])
            }
        }
        
        //刪除所有行
        function delAllRows(){
            //獲取到表格對(duì)象
            var tab = document.getElementById('tab');
            //獲取所有的name為check的復(fù)選框
            var check = document.getElementsByName('check');
            for(var i=0; i<check.length; i++){
                    tab.deleteRow(i+1);
                    i--;
            }
        }
        //刪除選中行
        function choseDel(){
            //獲取到表格對(duì)象
            var tab = document.getElementById('tab');
            //獲取所有的name為check的復(fù)選框
            var check = document.getElementsByName('check');
            var array=new Array();
            for(var i=0; i<check.length; i++){
                //判斷哪些是選中的單選框
                if(check[i].checked == true){
                    //獲取單元格對(duì)象
                    var myNode=check[i].parentNode;
                    var bookIdParent = myNode.nextElementSibling;
                    var bookId=bookIdParent.innerHTML;
                    array[array.length]=bookId;
                }
            }
            console.log(array);
            sendDeletToServer(array);
        }
        //發(fā)送要?jiǎng)h除書(shū)籍ID到服務(wù)器
        function sendDeletToServer(array){
            var booksId="";
            for(var i=0;i<array.length;i++){
                booksId+=array[i]+split;
            }
            //1.創(chuàng)建ajax對(duì)象
            var xhr = new XMLHttpRequest();
            //2.確定參數(shù)(請(qǐng)求方法,請(qǐng)求地址,是否異步)
            var url="http://"+ip+"/deleteBooks";
            xhr.open('post',url,true);
            //3.發(fā)送請(qǐng)求
            var string="&booksId="+booksId;
            xhr.send(str+string);
            xhr.responseType = 'Text';
            //處理返回結(jié)果
            xhr.onload = function(){
                var result=xhr.response;
                console.log(xhr.status)
                if(xhr.status=="200"){
                     if("deleteOk"==result){
                        alert("刪除成功!!!");
                        //獲取到表格對(duì)象
                        var tab = document.getElementById('tab');
                        //獲取所有的name為check的復(fù)選框
                        var check = document.getElementsByName('check');
                        for(var i=0; i<check.length; i++){
                            //判斷哪些是選中的復(fù)選框
                            if(check[i].checked == true){
                                //刪除選中行
                                tab.deleteRow(i+1);
                                i--;
                            }
                        }
                     }else if("deletefals"==result) {
                        alert("刪除失敗");
                     }
                }else{
                    console.log(xhr.status)
                    document.getElementsByClassName('body').value=result;   
                    document.write(result);
                }
            }
        }

        //修改功能
        function upadteRow(btn){
            //獲取單元格對(duì)象
            var cell1 = btn.parentNode.previousElementSibling;
            //判斷cell.innerHTML的內(nèi)容是不是數(shù)字
            if(!isNaN(cell1.innerHTML)){
                //修改單元格內(nèi)容
                cell1.innerHTML = "<input type='text' value='"+cell1.innerHTML+"' onblur='updateRowOver1(this)' autofocus/>";
            }
            var cell2 = cell1.previousElementSibling;
            //判斷cell.innerHTML的內(nèi)容是不是數(shù)字
            if(!isNaN(cell2.innerHTML)){
                //修改單元格內(nèi)容
                cell2.innerHTML = "<input type='text' value='"+cell2.innerHTML+"' onblur='updateRowOver1(this)' autofocus/>";
            }
            var cell3 = cell2.previousElementSibling;
            cell3.innerHTML = "<input type='text' value='"+cell3.innerHTML+"' onblur='updateRowOver2(this)' autofocus/>";
            var cell4 = cell3.previousElementSibling;
            //修改單元格內(nèi)容
            cell4.innerHTML = "<input type='text' value='"+cell4.innerHTML+"' onblur='updateRowOver2(this)' autofocus/>";
            var cell5 = cell4.previousElementSibling;
            //修改單元格內(nèi)容
            cell5.innerHTML = "<input type='text' value='"+cell5.innerHTML+"' onblur='updateRowOver2(this)' autofocus/>";
        }

        //修改功能文本框失去焦點(diǎn)
        function updateRowOver1(val){
            //獲取單元格對(duì)象
            var cell = val.parentNode;
            //判斷文本框里面是否是數(shù)字
            if(isNaN(val.value)){//true
                alert("請(qǐng)輸入數(shù)字");
            }else{
                //實(shí)現(xiàn)保存
                cell.innerHTML = val.value;
            }
        }
        //修改功能文本框失去焦點(diǎn)
        function updateRowOver2(val){
            //獲取單元格對(duì)象
            var cell = val.parentNode;
            //判斷文本框里面是否是數(shù)字
            if(null==val.value&&""==val.value){//true
                alert("請(qǐng)輸入內(nèi)容");
            }else{
                //實(shí)現(xiàn)保存
                cell.innerHTML = val.value;
            }
        }
        //將修改保存進(jìn)數(shù)據(jù)庫(kù)
        function upadteDb(btn){
            var bookId;
            var bookName;
            var bookInfo;
            var bookTotal;
            var bookNum;
            //獲取單元格對(duì)象       
            var cell1 = btn.parentNode.previousElementSibling;
            //判斷cell.innerHTML的內(nèi)容是不是數(shù)字
            if(!isNaN(cell1.innerHTML)){
                bookNum=cell1.innerHTML;
            }else{
                updateRowOver1(cell1.firstElementChild);
                bookNum=cell1.innerHTML;
            }
            var cell2 = cell1.previousElementSibling;
            if(!isNaN(cell2.innerHTML)){
                bookNum=cell2.innerHTML;
            }else{
                updateRowOver1(cell2.firstElementChild);
                bookNum=cell2.innerHTML;
            }
            var cell3 = cell2.previousElementSibling;
            if(!isNaN(cell3.innerHTML)){
                bookTotal=cell3.innerHTML;
            }else{
                updateRowOver1(cell3.firstElementChild);
                bookTotal=cell3.innerHTML;
            }
            var cell4 = cell3.previousElementSibling;
            if(cell4.firstElementChild==null){
                bookInfo=cell4.innerHTML;
            }else{
                updateRowOver2(cell4.firstElementChild);
                bookInfo=cell4.innerHTML;
            }
            var cell5 = cell4.previousElementSibling;
            if(cell5.firstElementChild==null){
                bookName=cell5.innerHTML;
            }else{
                updateRowOver2(cell5.firstElementChild);
                bookName=cell5.innerHTML;
            }

            var cell6 = cell5.previousElementSibling;
            if(cell6.firstElementChild==null){
                bookId=cell6.innerHTML;
            }else{
                updateRowOver2(cell6.firstElementChild);
                bookId=cell6.innerHTML;
            }
            console.log(bookId+bookName+bookInfo+bookTotal+bookNum);
            //獲取ajx對(duì)象
            var xhr=new XMLHttpRequest();
            //確定參數(shù)
            var url="http://"+ip+"/updateBook";
            xhr.open('post', url, true)
            //發(fā)送請(qǐng)求
            var string="&bookId="+bookId;
            string+="&bookName="+bookName;
            string+="&bookInfo="+bookInfo;
            string+="&bookTotal="+bookTotal;
            string+="&bookNum="+bookNum;
            xhr.send(str+string);
            //響應(yīng)處理
            xhr.onload=function(){
                var result=xhr.response;
                if(xhr.status=="200"){
                     if("updateOk"==result){
                        alert("修改成功!??!");
                     }else if("updateFalse"==result)    {
                        alert("修改失敗");
                     }
                }else{
                    document.getElementsByClassName('body').value=result;   
                    document.write(result);
                }
            }
        }
        
        
        //全選
        function choseAll(){
            var checkAll = document.getElementById('checkAll');
            var check = document.getElementsByName('check');

            if(checkAll.checked == true){
                for(var i=0; i<check.length; i++){
                    var checka = check[i];
                    checka.checked = true;
                }
            }else{
                for(var i=0; i<check.length; i++){
                    var checka = check[i];
                    checka.checked = false;
                }
            }
        }
        //隔行變色
        function operCss(){
            //獲取所有行數(shù)
            var trs = document.getElementById('tab').rows;
            //遍歷
            for(var i=0; i<trs.length; i++){
                if(i%2 == 0){
                    trs[i].style.backgroundColor = "rgba(255, 185, 19,0.9)";
                }
            }
        }
        window.onload=operCss();
    </script>
</body>
</html>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容