gpt4 book ai didi

javascript - 将随机值插入表 JS

转载 作者:行者123 更新时间:2023-11-30 09:41:10 25 4
gpt4 key购买 nike

我试图通过单击按钮生成一个随机名称,然后将该随机名称插入到看起来有点像这样的 HTML 表格中:

table {
font-family: arial, sans-serif;
border-collapse: collapse;
width: 100%;
}
td, th {
border: 1px solid #dddddd;
text-align: left;
padding: 8px;
}
tr:nth-child(even) {
background-color: #dddddd;
}
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<table>
<tr>
<th>Black</th>
<th>Blue</th>
<th>B & B</th>
<th>Ex-Tm #1</th>
<th>Ex-Tm #2</th>
<th>Gryphons</th>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
<tr>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
<td></td>
</tr>
</table>
</body>
</html>

我想要做的是点击一个按钮 var round1 将从 var round1names 中随机选择一个名称并将其插入单元格 1,1 ,然后从剩余的名称中随机选择并将该名称插入单元格 1,2... 并执行此操作,直到只剩下 1 个名称将插入到表格的单元格 1,6 中,只需单击一个按钮,这是我到目前为止的 JS 代码:

function myFunction()
{
var round1names = ['Forrest Gump', 'Tim Thomas', 'Pamila Henryson', 'Lotus Hobbes', 'Jerry Sparks', 'Kenneth Ingham'];
var round1 = round1names[Math.floor(Math.random()*round1names.length)];
}
<!DOCTYPE html>
<html>
<body>
<button type="button" onclick="myFunction()">Click me</button>
</body>
</html>

最佳答案

这是我在 jsFiddle 上的想法:

var x = 0, //starting column Index
cells = document.getElementsByTagName('td')
names = ['Forrest Gump', 'Tim Thomas', 'Pamila Henryson', 'Lotus Hobbes', 'Jerry Sparks', 'Kenneth Ingham'];

function myFunction(namesArray)
{
var round1names = namesArray.slice(0);
while (round1names.length > 0 && x < cells.length) {
var randomIndex = Math.floor(Math.random()*round1names.length);
cells[x].innerHTML = round1names[randomIndex];
x++;
round1names.splice(randomIndex, 1);
}
}

( https://jsfiddle.net/vuehc4n2/3/ )

然后在按钮的 onclick 上,传入名称数组:

<button type="button" onclick="myFunction(names)">Click me</button>

我已将名称数组移到函数外部,然后将其传递给 myFunction。该函数创建数组的副本,然后将该数组中的一个名称随机插入到表列中。如果名字超过 6 个,它会自动换行到下一行。然后,它从数组副本中删除名称。一旦所有名称都消失/使用,该功能就完成了。

创建数组的副本将允许您多次单击按钮。

希望这对您有所帮助!

关于javascript - 将随机值插入表 JS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41146208/

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