Javascript 表是否应更改行/列的数量?

Javascript 表是否应更改行/列的数量?,javascript,css,html-table,Javascript,Css,Html Table,请参阅下面的代码,该表应根据在下面的selected id选项中选择的输入更改行数,但仅读取selected id的第一个值,并且行数不根据选择更改,请指出我代码中的错误 HTML: 首先,您需要将事件侦听器附加到: 然后,您需要确保在每次调用buildTable时重建表之前清空表: function buildTable() { var myTable =document.getElementById("contentTable"); var j=document.getEle

请参阅下面的代码,该表应根据在下面的selected id选项中选择的输入更改行数,但仅读取selected id的第一个值,并且行数不根据选择更改,请指出我代码中的错误

HTML:

首先,您需要将事件侦听器附加到:

然后,您需要确保在每次调用buildTable时重建表之前清空表:

function buildTable() {
    var myTable =document.getElementById("contentTable");
    var j=document.getElementById("read").value;
    var rows = [];
    var cells = [];

    while (myTable.hasChildNodes()) {
        myTable.removeChild(myTable.lastChild);
    }

    ...
}
希望这有帮助

试试看

function buildTable() {

var myTable =document.getElementById("contentTable");
myTable.innerHTML = "";
var j=document.getElementById("read").value;
var rows = [];
var cells = [];
var myHtml = "";

    for( var i = 0; i < j; i++ ) {
        myHtml += "<tr>";
             for( var x = 0; x < 3 ; x++ ){
                myHtml += "<td></td>"
             }
        myHtml += "</tr>";
    }
myTable.innerHTML = myHtml;
}

这是一般的想法,也请确保在更改select时调用此函数。

如何触发对buildTable的调用?如果您只是在顶层调用它,它不会等待用户从菜单中选择某个内容。您应该从select的onchange处理程序调用它。您还需要在重建表之前清空表。
  #scrollingDiv
  {
  border: 1px groove black;
  height: 350px;
  width: 350px;
  background: #ffffff;
  overflow: auto;
  }

  #contentTable
  {
  height: 350px;
  width: 350px;
  }
  .every3rdrow{
  border-bottom:3px solid black;
  }
document.getElemenyById('read').addEventListener('change', buildTable);
function buildTable() {
    var myTable =document.getElementById("contentTable");
    var j=document.getElementById("read").value;
    var rows = [];
    var cells = [];

    while (myTable.hasChildNodes()) {
        myTable.removeChild(myTable.lastChild);
    }

    ...
}
function buildTable() {

var myTable =document.getElementById("contentTable");
myTable.innerHTML = "";
var j=document.getElementById("read").value;
var rows = [];
var cells = [];
var myHtml = "";

    for( var i = 0; i < j; i++ ) {
        myHtml += "<tr>";
             for( var x = 0; x < 3 ; x++ ){
                myHtml += "<td></td>"
             }
        myHtml += "</tr>";
    }
myTable.innerHTML = myHtml;
}