软工试水日报-多条件查询的实现 3/27

今天我们来试一试这个多条件查询的代码,基本思想仍是通过多条件来筛选数组:

function search(){
        var tab= document.getElementById("demo");
        for( var i=0;i<tab.rows.length;){
                  tab.deleteRow(0);   
        }
        var country = document.getElementById('country').value;
        var date = document.getElementById('date').value;
        var type = document.getElementById('type').value;
        var doit = document.getElementById('doit').value;
        var amount = document.getElementById('amount').value;
        
        
        for(var i = 0;i<alldata.length&&i<3680; i++){
            switch(type){
                case 'Confirm':
                    if(doit !='most'){
                        if(amount==''){amount="2147483640";}
                        if(alldata[i].name.includes(country)&&alldata[i].date.includes(date)&&alldata[i].Confirm<=amount)
                        {dogo(alldata[i].name,alldata[i].date,alldata[i].NowConfirm,alldata[i].ConfirmAdd,alldata[i].Confirm);}
                    }else{
                        if(amount==''){amount="0";}
                        if(alldata[i].name.includes(country)&&alldata[i].date.includes(date)&&alldata[i].Confirm>=amount)
                        {dogo(alldata[i].name,alldata[i].date,alldata[i].NowConfirm,alldata[i].ConfirmAdd,alldata[i].Confirm);}
                    }
                    break;
                case 'NowConfirm':
                    if(doit !='most'){
                        if(amount==''){amount="2147483640";}
                        if(alldata[i].name.includes(country)&&alldata[i].date.includes(date)&&alldata[i].NowConfirm<=amount)
                        {dogo(alldata[i].name,alldata[i].date,alldata[i].NowConfirm,alldata[i].ConfirmAdd,alldata[i].Confirm);}
                    }else{
                        if(amount==''){amount="0";}
                        if(alldata[i].name.includes(country)&&alldata[i].date.includes(date)&&alldata[i].NowConfirm>=amount)
                        {dogo(alldata[i].name,alldata[i].date,alldata[i].NowConfirm,alldata[i].ConfirmAdd,alldata[i].Confirm);}
                    }
                    break;
                case 'ConfirmAdd':
                    if(doit !='most'){
                        if(amount==''){amount="2147483640";}
                        if(alldata[i].name.includes(country)&&alldata[i].date.includes(date)&&alldata[i].ConfirmAdd<=amount)
                        {dogo(alldata[i].name,alldata[i].date,alldata[i].NowConfirm,alldata[i].ConfirmAdd,alldata[i].Confirm);}
                    }else{
                        if(amount==''){amount="0";}
                        if(alldata[i].name.includes(country)&&alldata[i].date.includes(date)&&alldata[i].ConfirmAdd>=amount)
                        {dogo(alldata[i].name,alldata[i].date,alldata[i].NowConfirm,alldata[i].ConfirmAdd,alldata[i].Confirm);}
                    }
                    break;
            }
            
        }
        
        console.log(country);
        console.log(date);
        console.log(type);
        console.log(doit);
        console.log(amount);
    
        
    }

其实昨天的代码就已经是多条件查询的形状了,但昨天主要重点是图表联动,所以这个就放到今天介绍啦

实现效果大概是这样,但这样不会调用图表就是了

原文地址:https://www.cnblogs.com/Sakuraba/p/14908242.html