在使用ajax与jqplot时遇到了传值的问题!一开始都不知值是怎么传过去的,只找到了例子是以<div id="data">原始数据</div>这样子来接收的!是的,这样子我们可以接收到另一jsp以ajax传过来的值,但我要把这值传进javascript里面啊!!搞了半天!才发现原来传过来的值是先到javascript里面,然后再给网页的!真是太傻逼了我!
后面就在就直接在javascript里面取值!但他妹地坑啊!传过来画不了图!后面想了想,用servlet解决吧,就是在另一jsp里面写
session.setAttribute("dataYear",dataYear);
接收的jsp里面写
<%=session.getAttribute("dataYear") %>
来接收数据!图片也可以显示了!但这完成了吗??本来也以为成功了!但后来调试时发现,数据库更新,图表竟不能随之更新!!找了下资料,才发现,用servlet传值只是初始化界面时传的,就是传过来 后你查看网页的源代码时,可以看到传过来的字符串而不是变量名!
现在怎么办啊!!看来还是只能回到以前的办法来做吧!
后来在调试时发现,传过来的值[['6/12/2025', 10500],['6/12/2026', 11000],['6/12/2027', 10000],['6/12/2028', 10500],['6/12/2029', 10240],['6/12/2030', 12541],['6/12/2031', 12311],['6/12/2032', 12121]]以
alert(<%=session.getAttribute("dataYear") %>);
显示时第一次加载竟是null,第二次才正常,为
而
alert(dataYear);
其中dataYear为:
var dataYear = XMLHttpReq.responseXML.getElementsByTagName("dataYear")[0].firstChild.nodeValue;
显示为
这格式不对啊!!怎么办?把传过来的字符串改为6/12/2025, 10500,6/12/2026, 11000,6/12/2027, 10000,6/12/2028, 10500,6/12/2029, 10240,6/12/2030, 12541,6/12/2031, 12311,6/12/2032, 12121?这能行吧??马上试下!我操,还是显示不了图片!这时
alert(<%=session.getAttribute("dataYear") %>);
接收的数据竟一直为null= =,坑爹的,我明明有传值过来的!
算了,上网找下改值属性的!找到了句
var array = eval(str)
这能行吗?
马上行动
var data =eval(dataYear);
接收的数据竟一直为Null。坑爹的,我明明有传值过来的!
算了,上网找下改值属性的!找到了句
var array = eval(str),
这能行吗?
马上行动
var data =eval(dataYear);
操作下!!竟能显示图表了,nice啊!
再在数据库加行数据先!
nice nice
及时显示出来!
完成了!