

一、input 既然给了value,页面出来以后输入框中至少有值,如果没有检查listroom对象,而且你这样用最好listroom和listscore是json的字符串
二、前端最好不要用alert,用console.info(...)更好,现代浏览器都带有开发者工具,快捷键都是F12,在console控制台里面可以看到console.info里面打印的日志
这个很简单,看日志打断点
这个很简单,看日志打断点
把input标签放在 jquery的上面执行,因为执行jquery的时候input标签还没有被加载!
把请求回来的值console.log(。。)打印出来控制台查看一下 其次在js里面加上一个$(function(){ 这里面执行js代码 }) 这样保证界面结构加载完成之后
返回undefined的原因应该是代码顺序的问题,js是由上至下运行的,当执行到标签的时候,当前的dom对象中只有上面的element,<br> 可以通过 $(document).ready(myFunction); 方式,当dom准备好之后执行myFunction,这个时候dom就是完全的了</p> <pre><code> <!DOCTYPE html> <html> <head> <script src="/jquery/jquery-1.11.1.min.js"></script> <script src="https://cdn.bootcss.com/echarts/4.0.4/echarts.min.js"></script> <script> function myFunction() { let week = JSON.parse($("#week").val()); console.info(week); let value = JSON.parse($("#value").val()); console.info(value); let myChart = echarts.init($("#chart")[0]); let option = { xAxis: { type: 'category', data: week }, yAxis: { type: 'value' }, series: [{ data: value, type: 'line' }] }; myChart.setOption(option); } $(document).ready(myFunction); </script> </head> <body> <input type="text" id="week" value='["Mon","Tue","Wed","Thu","Fri","Sat","Sun"]'> <input type="text" id="value" value='["820", "932", "901", "934", "1290", "1330", "1320"]'> <div id="chart" style="width:400px;height:400px;"></div> </body> </html> </code></pre>
console.log();打印看看
只对问题不看代码,通过ajax发送请求到后台获取数据,success : function(obj) { obj为响应回来的数据
从obj 里面循环拿值
如果返回的是对象比如返回data对象
eg:
var noticeList = obj.data.value;
拿到对象里的value 循环获取
for (var i = 0; i < noticeList.length; i++) {
var str = '
把script的内容放到页面的最下面试试看