Javascript 使用JS以错误的顺序填充HTML表
我有一个通过遍历现有表收集的数据数组,如下所示:Javascript 使用JS以错误的顺序填充HTML表,javascript,jquery,html-table,Javascript,Jquery,Html Table,我有一个通过遍历现有表收集的数据数组,如下所示: --------------- Mon | Hot | 12 --------------- Tue | Cold | -2 --------------- Wed | Warm | 3 --------------- Thu | Cold | -4 --------------- Fri | Cold | -3 ---------------
---------------
Mon | Hot | 12
---------------
Tue | Cold | -2
---------------
Wed | Warm | 3
---------------
Thu | Cold | -4
---------------
Fri | Cold | -3
---------------
数组中的数据按如下方式存储:['Mon','Hot','12','Tue','Cold','-2',等等]
数据现在需要显示在已翻转行和列的表中,以便数据显示如下:
Mon | Tue | Wed | Thu | Fri
-------------------------------
Hot | Cold | Warm | Cold | Cold
-------------------------------
12 | -2 | 2 | -4 | -3
我正在努力找到正确的循环语句来正确打印数据
到目前为止,我有以下几点:
for (i = 0; i < weather_data.length; i++)
{
if (i%5==0)
{
table.push('<tr><td>'+weather_data[i*3]+'</td>');
}
else if(i%4==0)
{
table.push('<td>'+weather_data[i*3]+'</td></tr>');
}
else
{
table.push('<td>'+weather_data[i*3]+'</td>');
}
}
所以循环需要按照从左到右的顺序生成这些,然后是下一行等等
~它还需要分别添加必要的起始标签
和
var data=['Mon'、'Hot'、'12'、'Tue'、'Cold'、'-2',
var data = ['Mon', 'Hot', '12', 'Tue', 'Cold', '-2',
'Wed', 'Warm', '3', 'Thu', 'Cold', '-4'];
var width = 3;
var height = data.length / width;
var r = "";
for(var i = 0; i < width; i++) {
var row = [];
for(var j = 0; j < height; j++) {
row.push("<td>" + data[j * width + i] + "</td>");
}
r += "<tr>" + row.join("") + "</tr>";
}
$("#container_id").html("<table>" + r + "</table>");
‘Wed’、‘温暖’、‘3’、‘Thu’、‘寒冷’、‘4’];
var宽度=3;
变量高度=数据长度/宽度;
var r=“”;
对于(变量i=0;i
var数据=['Mon'、'Hot'、'12'、'Tue'、'Cold'、'-2',
‘Wed’、‘温暖’、‘3’、‘Thu’、‘寒冷’、‘4’];
var宽度=3;
变量高度=数据长度/宽度;
var r=“”;
对于(变量i=0;i
你在JSFIDLE上有这个功能吗?恐怕没有,实际的站点是私有的,功能取决于大量AJAX调用的结果,而且我以前从未使用过JSFIDLE,安装它需要很长时间,抱歉。不过我会尽快学习如何使用它,你不需要把整个页面放在JSFIDLE上。只是表示逻辑的东西。表数据是从外部文件中提取的;我必须完全改变我的代码。。这个问题真的是一个数学问题,网站的背景是相当不重要的。我现在正在尝试这样做,如果我有任何成功,将更新!你在jsfiddle上有这个吗?我没有,我担心,实际的站点是私有的,功能取决于大量AJAX调用的结果,而且我以前从未使用过jsfiddle,安装它需要很长时间,抱歉。不过我会尽快学习如何使用它,你不需要把整个页面放在JSFIDLE上。只是表示逻辑的东西。表数据是从外部文件中提取的;我必须完全改变我的代码。。这个问题真的是一个数学问题,网站的背景是相当不重要的。我现在正在尝试这样做,如果我有任何成功,将更新!非常感谢,太好了!非常感谢,太好了!
var data = ['Mon', 'Hot', '12', 'Tue', 'Cold', '-2',
'Wed', 'Warm', '3', 'Thu', 'Cold', '-4'];
var width = 3;
var height = data.length / width;
var r = "";
for(var i = 0; i < width; i++) {
var row = [];
for(var j = 0; j < height; j++) {
row.push("<td>" + data[j * width + i] + "</td>");
}
r += "<tr>" + row.join("") + "</tr>";
}
$("#container_id").html("<table>" + r + "</table>");