easypiechart通過AJAX獲取Json數據,動態刷新

這是我寄幾寫來記錄的,有需要的可以參考,如果有不對的地方歡迎指正 QAQ
我們的需求是,一進入頁面為了保證加載快一點,先給定一個值,然后每三秒鐘根據后臺傳來的json文件刷新數據,話不多說,上圖。這是初始情況下的echart。

start

                <li>
                    <div id="pie_1" class="piechart"
                        data-percent="0">
                        <span class="percent"></span>
                    </div> <span class="title">連網狀態 </span>
                </li>
                <li>
                    <div id="pie_2" class="piechart"
                        data-percent="0"> 
                        <span class="percent"></span>
                    </div> <span class="title">云服務</span>
                </li>
                <li>
                    <div id="pie_3" class="piechart"
                        data-percent="18"> 
                        <span class="percent"></span>
                    </div> <span class="title">遠程運維</span>
                </li>
                <li>
                    <div id="pie_4" class="piechart" data-percent="85">
                        <span class="percent"></span>
                    </div> <span class="title">版本升級</span>
                </li>

以上是初始情況下的HTML。
下面上js。

var chart1;
var chart2;
var chart3;
var handleProfileSkillPie = function () {
    //Pie 1
    $('#pie_1').easyPieChart({
        easing: 'easeOutBounce',
        onStep: function(from, to, percent) {
            $(this.el).find('.percent').text(Math.round(percent)+"%");
        },
        lineWidth: 6,
        barColor: '#F0AD4E'
    });
     chart1 = window.chart = $('#pie_1').data('easyPieChart');
    //Pie 2
    $('#pie_2').easyPieChart({
        easing: 'easeOutBounce',
        onStep: function(from, to, percent) {
            $(this.el).find('.percent').text(Math.round(percent)+"%");
        },
        lineWidth: 6,
        barColor: '#D9534F'
    });
    chart2 = window.chart = $('#pie_2').data('easyPieChart'); 
    //Pie 3
    $('#pie_3').easyPieChart({
        easing: 'easeOutBounce',
        onStep: function(from, to, percent) {
            $(this.el).find('.percent').text(Math.round(percent)+"%");
        },
        lineWidth: 6,
        barColor: '#70AFC4'
    });
    chart3 = window.chart = $('#pie_3').data('easyPieChart'); 
}
     handleProfileSkillPie();

接下來是AJAX。

     function loadnumber(){
         var all;
         var num;
         var cloud;
         var control;
         $.ajax({
            url:'數據來源json文件的url',
            type:'get',
            dataTpye:'json',
            cache:false,
            async:true,
            success:function(data){
                    all=data.allCount;
                    var number=data.statusCount;
                    num=number.networkStatus;
                    cloud=number.cloudStatus;
                    control=number.controlStatus;                           
                    $('#pie_1').attr('data-percent',Math.round(num/all));
                    $('#pie_2').attr('data-percent',Math.round(cloud/all));
                    $('#pie_3').attr('data-percent',Math.round(control/all));           
                    $('#pie_1 .percent').text(Math.round(num/all)+"%");
                    $('#pie_2 .percent').text(Math.round(cloud/all)+"%");
                    $('#pie_3 .percent').text(Math.round(control/all)+"%");
                

         `//這里重畫easypiechart `
                    
                    chart1.update(Math.round(num/all));
                    chart2.update(Math.round(cloud/all));
                    chart3.update(Math.round(control/all));
                    
                }   
         })
         }

         $(document).ready(function(){
              window.setInterval(loadnumber,3000);
            })

done

大功告成咯,真好玩,這是動態的局部刷新,我不會搞動圖進來,so,就醬~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,259評論 25 708
  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,923評論 18 139
  • 文 / 秦未 我原來也接觸過Ajax的開發,但始終沒有系統的學習,今天正好有時間就在慕課網學習一下,也在這里分享自...
    煮茶忘放糖閱讀 785評論 0 2
  • 背景 在沒有ajax之前,前端與后臺傳數據都是靠表單傳輸,使用表單的方法傳輸數據有一個比較大的問題就是每次提交數據...
    我愛薩摩耶閱讀 4,494評論 0 14
  • 周一: 在某區的派出法庭開庭,我代理原告,被告一未到庭,被告二到庭。被告二與被告二在向原告借款30萬后的第二天在民...
    穎穎潛行閱讀 245評論 0 0