鬱悶,被坑了3個小時,最後發現只一個函數就解決 心中N只草擬嗎奔騰而過有木有
有這樣一個需求,根據圖中選擇的天數,然後去後臺走不通的查詢,最後返回結果給前臺,剛開始在echarts中使用了$.post()請求路由,然後返回結果,但是發現只有通過手動去選擇別項的時候纔會有數據傳過來,
於是乎在js中將獲取數據的部分單獨寫在函數中,最後return出去,然後賦值給echarts獲取數據的地方,呵呵
我還是太年輕了,echarts代碼中根本就拿不到post請求後的數據
轉輾反側,3個小時過去後
百度了N久發現jquery中有一個trigger函數可以預先執行以下定義的事件
html部分
<select class="form_control" id="history">
<option value="0">最近24小時</option>
<option value="1">最近7天</option>
<option value="2">最近30天</option>
</select>
js部分:
$("#history").change(function(){
var selected = $("#history").val();
$.post("/logs/session/count", {"selected": selected}, function(data){
option.series[0].data = data.session_count;
option.xAxis[0].data = data.time_count;
myChart.setOption(option, true);
})
}).trigger("change") //就是這個地方 讓它執行一次事件即可