【问题标题】:I want to create HTML page which needs to show table rows and column by giving inputs by number of rows and columns我想通过按行数和列数提供输入来创建需要显示表格行和列的 HTML 页面
【发布时间】:2013-10-15 08:42:54
【问题描述】:

我将创建 2 个标签及其 2 个文本框。通过输入值,它必须给我行和列的相应输出。

如果我输入 2 作为行和 3 作为列.. 输出将是 2 行和 3 列..

我很困惑如何在这里使用 javascript.. 请帮忙

【问题讨论】:

  • 你能告诉我们你到目前为止的尝试吗?

标签: javascript html-table rows dynamic-columns


【解决方案1】:

修改了 Gal V 的答案...使用输入而不是提示...jsFiddle

<style type="text/css">
td{min-width:100px;min-height:20px;border:solid 1px #000;}
</style>

<script type="text/javascript">
function createTable() {
 document.getElementById('tb_container').innerHTML = "" ;
    var rows  = document.getElementById('tb_rows').value;
     var cols  = document.getElementById('tb_cols').value;

    tblHtml = '<table>'
    for (i=0; i<rows; i +=1 ) {
        tblHtml += '<tr>';
        for (j=0; j<cols; j +=1 ) {
         tblHtml += '<td>&nbsp;</td>';
        }
          tblHtml += '</tr>';
    }
    tblHtml += '</table>';
    document.getElementById('tb_container').innerHTML = tblHtml;
}
</script>

用你自己的方式设计下面的代码...

Rows:<input type="text" id="tb_rows" > <br>
Columns : <input type="text" id="tb_cols" >
<input type="button" value="Create Table" onclick="createTable()" > 

<div id="tb_container" ></div>

【讨论】:

  • 非常感谢。我会修改它.. 更多.. 在创建行和列之后,你能帮忙在每一行中添加文本框吗?有吗??
  • @user2881738 抱歉,但是.. 我现在有点忙.. 所以也许稍后.. 好吗??
  • @user2881738 顺便说一句.. 文本框应该添加到哪里??
  • 文本框应该添加到每一行和每一列中,无论我们给出什么输入
  • @user2881738 嗯...就像电子表格一样?你可以输入任何行和列??
【解决方案2】:

给你:

<style type="text/css">
td{min-width:100px;min-height:20px;border:solid 1px #000;}
</style>

<script type="text/javascript">
window.onload = function() {
    document.getElementById('btnCreate').addEventListener('click', function(){
        var rows = parseInt(document.getElementById('txtRows').value),
            cols = parseInt(document.getElementById('txtCols').value);
        create(rows,cols);
    });
}

function create(rows, cols) {
    if (rows <= 0 || cols <= 0)
        return false;

    var html = '<table>';
    for (i=0;i<rows;i++) {
        html += '<tr>';
        for (j=0;j<cols;j++) {
            html += '<td>&nbsp;</td>';
        }
        html += '</tr>';
    }
    html += '</table>';
    document.getElementsByTagName('body')[0].innerHTML = html;
}
</script>

rows: <input type="text" id="txtRows" /><br/>
cols: <input type="text" id="txtCols" /><br/>
<input type="button" value="create table" id="btnCreate" />

希望有帮助。

【讨论】:

  • 非常感谢...它在 JSfiddle 在线动态工作..我的问题是如何离线使用它..因为我没有看到任何 html 页面.. ??谢谢
  • 请更好地解释您到底需要什么
  • 可以离线运行html页面,只需要下载jquery在本地使用...
  • 如果我不想使用 jQuery 而只使用 javascript、html 和 Css 怎么办?我如何实现它?
  • 我将修改答案以仅使用纯 JavaScript。我总是喜欢 jquery :-)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-09
  • 2021-11-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多