简体   繁体   English

如何设置用户可以创建的表行数的限制?

[英]How can I set a limit on the number of table rows a user can make?

In my html, I have a div that is 300px long. 在我的html中,我有一个300px长的div。 In this div, there is a input, button and a table. 在这个div中,有一个输入,一个按钮和一个表。 The input ID is "toDo" and the button id is "addToDo". 输入ID为“ toDo”,按钮ID为“ addToDo”。 However, I would like to limit the number of todos that can be added, because after many, it exceeds the 300px height and continues to add rows. 但是,我想限制可以添加的待办事项的数量,因为很多之后,它超过了300px的高度并继续添加行。

var dailyTasks = document.getElementById("ToDo");
var toDoSpace = document.getElementById("toDospace");
document.getElementById("addToDo").addEventListener('click', function addToDo()
{

 var aToDo = document.getElementById("newToDo").value;
  ToDos.push(aToDo);
  var row = document.createElement("tr");
  toDoSpace.appendChild(row);
  var cell= row.insertCell(0);
  cell.innerHTML =  ToDos[0] +  "<div class ='counter'></div>";

 //this did not work 
  if(document.getElementsByTagName("tr") == 5)
  {

    cell.innerHTML = "too many TODos";
  }

}); });

Change this line: 更改此行:

if(document.getElementsByTagName("tr") == 5)

to: 至:

if(document.getElementsByTagName("tr").length == 5)

getElementsByTagName() returns an array of elements, and to check how many they are, you need to check the .length property of that array. getElementsByTagName()返回一个元素数组,并检查它们的数量,您需要检查该数组的.length属性。

Updated: 更新:

HTML: HTML:

<div id="ToDo">
  <h2>Daily Tasks</h2>
  <input id="newToDo" />
  <button id="addToDo">add ToDo</button>

  <table id="toDospace"></table>
  <div id="message"></div>
</div>

Javascript: Javascript:

var toDoSpace = document.getElementById("toDospace");

document.getElementById("addToDo").addEventListener('click', function addToDo()
{
    var aToDo = document.getElementById("newToDo").value;

    if(document.getElementsByTagName("tr").length == 10)
  {
        document.getElementById('message').innerHTML = 'To many todos!';  
  }
  else if (aToDo === '')
  {
    document.getElementById('message').innerHTML = 'Cannot be empty!';
  }
  else
  {    
    var row = document.createElement("tr");
    toDoSpace.appendChild(row);
    var cell= row.insertCell(0);
    cell.innerHTML =  aToDo +  "<div class ='counter'></div>";      
    document.getElementById("newToDo").value = '';
        document.getElementById('message').innerHTML = '';
  }
});

Working fiddle example: 工作小提琴示例:

https://jsfiddle.net/rwt9302c/2/ https://jsfiddle.net/rwt9302c/2/

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 如何限制我可以用jquery动态添加的表行数 - how to limit the number of table rows I can dynamically add with jquery 我如何通过使用自定义输入获取用户输入的行数和列数来使用js在网站上制作表格 - How can i make a table on a website using js by taking user inputs of number of rows and columns with custom inputs 如何在页面加载时从表中加载一定数量的行,并仅在用户加载它们时加载更多行? - How can i load a set number of rows from a table on pageload and only load further rows when the user loads them? 如何限制用户在表中选择的行数? - How to limit the number of rows selected in a table for a user? 我如何限制用户可以输入ckeditor的字符数? - How can i limit the number of characters the user can enter into ckeditor? 如何限制画廊一次显示的行数 - How can I limit the number of rows to show at a time for my gallery 如何检索表中有限数量的行,但要搜索所有数据库集中的行? - How can I retrieve limited number of rows in table but search in all the database set? 如何设置用户不能在第一个数字中输入数字0? - How do I set the user can not enter the number 0 in the first number? 冷暖游戏——我怎样才能让随机数在每次用户在 JavaScript 中输入猜测数时不改变。 猜测答案没有限制 - Cold, warm game-how can I make the random number not to change every time user put a guess number in JavaScript . There is no limit on guess answer 如何限制输入数字范围? - How can I limit the input number range?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM