工程分享:
模塊1:下拉菜單的實時顯示最近一周時間:
//顯示日期下拉選框for(var i=0;i<7;i++){$("#choose1>option:eq("+i+")").html(GetDateStr(-i)); $("#choose1>option:eq("+i+")").attr("value",GetDateStr(-i));//該語句為了便于下拉選中的數據的值} //這個是上述的對應函數//以下為日期下拉選擇框自動調整function GetDateStr(AddDayCount) { var dd = new Date(); dd.setDate(dd.getDate()+AddDayCount);//獲取AddDayCount天后的日期 var y = dd.getFullYear(); var m = dd.getMonth()+;var d = dd.getDate(); return y+"-"+m+"-"+d;}輸出格式為年-月-天
在工程中,實現的是選擇對應傳參刷新table值,對應內容如下:
$("#choose1").bind("change",function(){var value=$(this).val();var result={"time":value+" 00:15:00"};//工程刷新時間為凌晨,所以設置時間格式為延遲15分鐘//注意,此處的result是將字符串格式化為對象refreshData(result);//調用Hcharts繪制函數}); //對應的函數為:function refreshData(result){$.ajax({type: "POST",//請求格式設置為post類型url:actionname,dataType:"text", //ajax返回值設置為text(json格式也可用它返回,可打印出結果,也可設置成json)data:result,//此處的result是格式化的傳過來的所選的時間,進而使得action帶時間參數傳遞success: function(json){ var obj = $.parseJSON(json); //使用這個方法解析jsonvar xAxisData=new Array();//轉換成數組var yAxisData=new Array();var AxisData=new Array();var str=new Array(),x=new Array();y=new Array();for(var i=0;i<obj.resultData.length;i++){xAxisData[i]=obj.resultData[i].date;yAxisData[i]=obj.resultData[i].value;str=xAxisData[i].split(" ");x=str[0].split("-");y=str[1].split(":");for(var j=0;j<3;j++){x[j]=parseInt(x[j]);y[j]=parseInt(y[j]);}var year=x[0],month=x[1]-1,day=x[2],hour=y[0],minute=y[1],second=y[2];AxisData[i]=[Date.UTC(year,month,day,hour,minute,second),yAxisData[i]];//注意,這里是格式化的時間格式(符合hcharts表的要求)}$('#box').highcharts({chart: {type: 'spline',//類型設置marginBottom:70},title: {margin:10},xAxis: {type: 'datetime',title: {text: '時間',align:'high'},dateTimeLabelFormats:{second:'%Y-%m-%d %H:%M:%S'}},yAxis: {title: {text: '能耗',rotation:0,align:'high'} },tooltip: { formatter: function () { return '<b>' + "乙烯生產能效值: "+this.y + '</b><br/>' + Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', this.x) + '<br/>' ; //格式化輸出} }, plotOptions: {//在這個位置可以設置比如像折線圖中點的點擊事件spline: {marker: {enabled: true}},series:{cursor:'pointer',point:{events:{click:function(){//點擊事件對應的函數實現以及參數定義var timee=new Date(this.x);timee.setHours(timee.getHours()-8);//獲取AddDayCount天后的日期 var yy = timee.getFullYear(); var mt = timee.getMonth()+1;var dd = timee.getDate();var hh=timee.getHours();var mm=timee.getMinutes();var ss=timee.getSeconds();if(hh<10) hh="0"+hh;if(mm<10) mm="0"+mm;if(ss<10) ss="0"+ss;if(dd<10) dd="0"+dd;if(mt<10) mt="0"+mt;//對于個位數,對應的十位設置為0var action=yy+'-'+mt+'-'+dd+' '+hh+':'+mm+':'+ss;$("#Time_click").html(action); var result={"time":action};refreshTable(result)//刷新表 }}}},series:[{name:meaning,data:AxisData//此處寫入要進行顯示的數據}]}); refreshTable(result);}}}); }以上所述是小編給大家介紹的jQuery實現下拉菜單(內容為時間)的實時更新及圖表的隨動更新的方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答