gpt4 book ai didi

javascript - 使用 Javascript 动态创建 html 表格

转载 作者:行者123 更新时间:2023-11-29 17:18:39 24 4
gpt4 key购买 nike

我正在尝试使用 Javascript 创建一个基于用户输入的表(实际上是两个或三个表,具体取决于用户输入..),我非常熟悉 PHP,并且已经在 PHP 中实现了这个功能,但是我会喜欢用户能够在查询它之前看到该表。我在这里找到了一个脚本,它部分完成了我想要的并试图编辑它(我发现它与 PHP 惊人地相似)基本上它计算单元格(端口)的总数,将它按行和列拆分,“ super ”列如果用户希望将其拆分为多个表格,这些表格彼此相邻对齐,则使用 div 标签。这是我的 JS:

<html>
<head>
<script type="text/javascript">
function createTable()
{
var num_ports = document.getElementById('ports').value;
var num_super = document.getElementById('super').value;
var num_rows = document.getElementById('rows').value;
var num_cols = document.getElementById('cols').value;
var tbody = '';
var colStart = num_cols / num_super;
for( var i=0; i<num_super; i++){
var theader = '<div><table border="1">\n';
for(u=1; u<=num_row; u++){
tbody += '<tr>';
for( var j=0; j<colStart; j++)
{
tbody += '<td>';
tbody += 'Cell ' + i + ',' + j;
tbody += '</td>'
}
tbody += '</tr>\n';
}
var tfooter = '</table></div>';
document.getElementById('wrapper').innerHTML = theader + tbody + tfooter;
}
</script>
</head>

<body>
<form name="tablegen">
<label>Ports: <input type="text" name="ports" id="ports"/></label><br />
<label>Super Columns: <input type="text" name="super" id="super"/></label><br />
<label>Rows: <input type="text" name="rows" id="rows"/></label><br />
<label>Columns: <input type="text" name="cols" id="cols"/></label><br/>
<input name="generate" type="button" value="Create Table!" onclick='createTable();'/>
</form>

<div id="wrapper"></div>
</body>
</html>

这是经过 PHP 处理后的最终输出(ports:24, col:6, rows:2, super:2):

table

这是我拼凑的一个 js fiddle : http://jsfiddle.net/9SnLB/

目前,当我点击按钮时没有任何反应,但是,我想这是我的第一个问题,但我是否正确地进行了设置?为什么按钮不会运行该功能?

最佳答案

两个错误。一个你没有关闭函数括号,即末尾缺少 }。第二个是您使用 $row 而不是您创建的变量 num_rows。由于某种原因,它在 fiddle 中不起作用,但它确实在本地起作用。 fiddle 说 createTable 函数未定义。

function createTable()
{
var num_ports = document.getElementById('ports').value;
var num_super = document.getElementById('super').value;
var num_rows = document.getElementById('rows').value;
var num_cols = document.getElementById('cols').value;
var tbody = '';
var colStart = num_cols / num_super;
for( var i=0; i<num_super; i++){
var theader = '<div><table border="1">\n';
for($u=1; $u<=num_rows; $u++){
tbody += '<tr>';
for( var j=0; j<colStart; j++)
{
tbody += '<td>';
tbody += 'Cell ' + i + ',' + j;
tbody += '</td>'
}
tbody += '</tr>\n';
}
var tfooter = '</table></div>';
document.getElementById('wrapper').innerHTML = theader + tbody + tfooter;
}
}

关于javascript - 使用 Javascript 动态创建 html 表格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14554376/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com