1.HTML:
<div id="yl_4" class="tab-pane fade active in"> <label class="col-sm-5 control-label">缴费年份</label> <div class="col-sm-5"> <input type="text" id="jfnf" name="jfnf" value="2019" class="form-control" readonly="readonly" onFocus="WdatePicker({isShowClear:false,dateFmt:'yyyy',startDate:'%y'})"> </div> <div id="chart7"></div> </div> |
2.JS:
$.ajax({ type : "get", url : ctx + "/admin/zklt/payInfo/getTrendYL", data:{jfnf:$('#jfnf').val()}, //向后台传输数据 dataType: "json", success : function(result) { for(var i =0;i<result.length;i++){ if(null == result[i].name){ ylx.push("其他"); }else{ ylx.push(result[i].name); } yly.push(result[i].total); } myChart7.hideLoading(); myChart7.setOption({ xAxis:{ data:ylx }, series:[{ data:yly }] }); }, error:function(){ alert("error"); } }); |
3.controller:
public void getTrendYL() { String jfnf = getPara("jfnf"); //从前端获取数据 List<ZkltSjjl> findTrendYL = ZkltSjjl.dao.findTrendYL(jfnf); renderJson(findTrendYL); } |
4.dao:
public List<ZkltSjjl> findTrendYL(String jfnf){ String sql = "select a.jfdd, a.jflx,b.name, count(1) as total" +" from zklt_sjjl a left join" +" zklt_area b on b.id = a.jfdd" +" where a.yxbs = '1' and a.jflx = '1'" +"and to_char(a.create_time,'yyyy')='"+jfnf+"'" +" group by a.jfdd, a.jflx,b.name"; return ZkltSjjl.dao.find(sql); } |
切记:如果ajax需要从HTML页面中获取数据,必须把ajax放在HTML下面,否则,ajax获取不到id=jfnf的值。