带有几个嵌套循环的 JQuery 应该很容易做到这一点。您可以使用字符串生成器或其他工具对其进行优化,但基础非常清楚。如果你正在做一些更复杂的事情,你可能会更好地研究 JQuery 或 MS AJAX 的模板引擎之一:
<script type="text/javascript">
$(function() {
$('INPUT, SELECT').change(function() {
var rows = parseInt($('#rows').get(0).value);
var cols = parseInt($('#cols').get(0).value);
if (isNaN(rows) || isNaN(cols)) {
return;
}
var shape = $('#shape').get(0).value;
drawTable(rows, cols, shape);
});
});
function drawTable(rows, cols, shape) {
$('#results').empty().append("<table></table>");
var table = $('#results > TABLE');
for (var row = 0; row < rows; row++) {
var htmlRow;
htmlRow = '<tr>';
for (var col = 0; col < cols; col++) {
htmlRow += '<td><img src="' + shape + '.gif" alt="' + shape + '" /></td>';
}
htmlRow += "</tr>";
table.append(htmlRow);
}
}
</script>
Columns: <input id="cols" type="text" /> <br />
Rows: <input id="rows" type="text" /> <br />
Shape:
<select id="shape">
<option value="square">Square</option>
<option value="circle">Circle</option>
</select>
<div id="results">
</div>