我有一个执行查询的.php文件,此查询根据结果添加文本字段,例如:
$query = mysqli_query($mysqli, "SELECT YEAR,PERIOD FROM users");
$num_users = mysqli_num_rows($query);
for($i=1; $i<=$num_users; $i++) {
$row = mysqli_fetch_array($query);
echo "<input type='text' id='year$i' name='year$i' value='".$row['YEAR']."'>";
echo "<input type='text' id='period$i' name='period$i' value='".$row['PERIOD ']."'>";
}
echo "<input type='text' id='count' name='count' value='$num_users'>"
因此,这将输出x个输入,因此它可能是1到40个包含年份和期间的输入,然后我用以下内容捕获这些字段的值:
count = parseInt(document.getElementById('count').value);
for(i=1;i<=count;i++) {
var custom = "year" + i;
window[custom] = parseFloat(document.getElementById('year' + i).value);
var custom = "period" + i;
window[custom] = parseFloat(document.getElementById('period' + i).value);
}
在此之前一切正常,我已经测试了上面的代码,并且所有输入值都保存在正确的变量中。
我怎么能有一个系列会显示这些年龄,记住数据的数量会发生变化?
我在想这样的事情:
series: [
for(i=1;i<=count;i++) {
{
name: year + i,
data: [period + i]
}
}
]
请帮帮我!!谢谢!
答案 0 :(得分:1)
series
必须是数组。如果你想使用一个填充该数组的函数,你可以创建一个这样的自执行函数(更新demo,它将输出到textarea):
series: (function(year, period, count) {
var data = [];
for(i=1;i<=count;i++) {
data.push(
{
name: year + i,
data: [period + i]
}
);
}
return data;
})(year, period, count)
这假设您有外部值year
,period
和count
答案 1 :(得分:0)
很容易。致电
addSeries()
在计数的每次迭代中将其推入高级图表。
$(function(){ $( '#集装箱')。highcharts({ xAxis:{ 类别:['Jan','Feb','Mar','Apr','May','Jun','Jul','Aug','Sep','Oct','Nov','Dec' ] }, 系列:[{ 数据:[29.9,71.5,106.4,129.2,144.0,176.0,135.6,148.5,216.4,194.1,95.6,54.4] }] });
// the button handler $('#button').click(function() { var chart = $('#container').highcharts(); if (chart.series.length == 1) { chart.addSeries({ data: [194.1, 95.6, 54.4, 29.9, 71.5, 106.4, 129.2, 144.0, 176.0, 135.6, 148.5, 216.4] }); } }); });
答案 2 :(得分:0)
感谢所有人,但我找到了一个更简单的解决方案:
var year = new Array();
for(i=1;i<=count;i++) {
var custom = "year" + i;
window[custom] = parseFloat(document.getElementById('year' + i).value);
year.push(document.getElementById('year' + i).value);
}
// Highcharts
series: [{
name: 'Pacientes',
data: year
}