jquery初学者
查了很多帖子,jqchart插件做折线图时,处理返回数据时全都是eval,但我怎么也弄不出来,后来发现:
1、根本不需要eval处理,直接截取字符串即可(返回值要拼接好);
2、处理好的字符串放进series的data里要加上[];
下面是代码:
html页面<body>标签里面只放了一个<div id="jqChart" style="width: 500px; height: 300px;"></div>;
<script>里面
<script type="text/javascript"src="jquery.1.8.2.js"></script>
<script type="text/Javascript"src="jquery-jqChart-min.js"></script>
<script type="text/javascript">$(function () {
$.get("tgAjax.php",function(data){var dom = data.substring(0,data.length-1);//主要是对返回数据的处理,后面很明显多了一个","//var dom = eval('(' + dom + ')');//alert( dom);
$('#jqChart').jqChart({
title: { text:'线形图示例'},
axes: [
{
location:'left',
minimum:1,
maximum:10,
interval:1,
}
],
series: [
{
type:'line',
title:'上海',
markers:null,//拐点不用圆点标示strokeStyle:'blue',
data: [['json',1], ['per',9], ['perter',3]]
},
{
type:'line',//line,Columntitle:'北京',
strokeStyle:'red',
data:[dom]},
]
});
});
});
</script>
后台处理页面我就用简单的php弄了,别的也不会
<?php
include ("configaz.php");//数据库连接在另一个文件内,这里就不弄了$sql="select sid,sname,sPRice,count(sprice) as pricenum from shangpin group by sname";
$query=MySQL_query($sql);
$row=mysql_fetch_array($query);while($row=mysql_fetch_array($query)){
$pricenum=$row['pricenum'];
$sname=$row['sname'];
}
echo $str .="['".$sname."',".$pricenum."],";//拼接字符串,按照jqChart要求的字符串格式,当然用数组更好,可惜不怎么会
肯定还有更好的方法 只是我刚开始学,慢慢摸索