[英]javascript array to table layout broken
我有以下代码:
function test() {
var results = "";
var myArray = [];
myArray[0] = "Thur May 09 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
myArray[1] = "Thur May 10 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
myArray[2] = "Thur May 10 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
myArray[3] = "Thur May 10 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
results = "<table border='1'>";
for (var i = 0; i < myArray.length; i+=2 )
{
results += "<td>Dates</td>";
results += "<td>Price</td>";
results += "<td>Available?</td>";
results += "<tr><td>" + myArray[i+1] + "<tr><td>" + ( myArray[i+1]===undefined ? '' : myArray[i+1] )+ "</tr></td>";
}
results += "<table><br /> <br />";
var div = document.getElementById("associatedAssets");
div.innerHTML = results;
}
test();
我想要以下布局:
Dates | Prices | Available
我希望我的代码填充日期值,但我也想填充空行,以便用户可以手动输入值。
这是我的JSFIDDLE: http : //jsfiddle.net/zE2bH/67/
您没有使用任何<th></th>
标签。 这些定义表中的header
。
results = "<table border='1'>";
results += "<th>";
results += "<td>Dates</td>";
results += "<td>Price</td>";
results += "<td>Available?</td>";
results += "</th>";
for (var i = 0; i < myArray.length; i++ ) {
results += "<tr>";
results += "<td>" + myArray[i] + "</td>";
results += "<td>PRICE</td>";
results += "<td>" + ( myArray[i]===undefined ? '' : myArray[i] )+ "</td>";
results += "</tr>";
}
results += "<table>";
由于table
和header
是静态的,因此我只将它们留在HTML中,并仅用相应的rows
填充table
。 请注意,这仅适用于完全没有显示任何表的情况。
试试这个: http : //jsfiddle.net/rkaEA/
基本上,表标题需要循环使用。 也; 您可以将<td></td>
用于空单元格。
希望对您有所帮助
<!DOCTYPE html>
<html>
<head>
<script>
function test() {
var results = "";
var myArray = [];
myArray[0] = "Thur May 09 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
myArray[1] = "Thur May 10 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
myArray[2] = "Thur May 10 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
myArray[3] = "Thur May 10 2013 00:00:00 GMT+0100 (GMT Daylight Time)";
results = "<table border='1'><tr><td>Dates</td><td>Price</td><td>Available?</td></tr>";
for ( var i = 0; i < myArray.length; i++)
{
var date = myArray[i + 1];
if (date == undefined) {
date = "";
}
results += "<tr><td>" + date
+ "</td><td>price here</td><td>isAvailable here</td></tr>";
}
results += "<table><br /> <br />";
var div = document.getElementById("associatedAssets");
div.innerHTML = results;
}
</script>
</head>
<body>
<div id="associatedAssets"></div>
<script>
test();
</script>
</body>
</html>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.