使用Javascript创建动态id

使用Javascript创建动态id,javascript,jquery,html,Javascript,Jquery,Html,我正在创建一个基于javascript数组改变大小的表。我正在对保留进行建模,当页面加载时,它会在保留对象数组中循环,并创建一个表来表示它们。我创建了一个复选框作为每行的第一个元素,如下所示: checkboxCell.innerHTML = "<input type='checkbox'>"; checkboxCell.innerHTML=”“; 我希望能够知道按下时我正在单击哪一行(或复选框)。因为这些都是在一行中创建的,所以它们都具有相同的ID。因此,我需要一种方法来知道我

我正在创建一个基于javascript数组改变大小的表。我正在对保留进行建模,当页面加载时,它会在保留对象数组中循环,并创建一个表来表示它们。我创建了一个复选框作为每行的第一个元素,如下所示:

checkboxCell.innerHTML = "<input type='checkbox'>";
checkboxCell.innerHTML=”“;

我希望能够知道按下时我正在单击哪一行(或复选框)。因为这些都是在一行中创建的,所以它们都具有相同的ID。因此,我需要一种方法来知道我在表中的位置,或者一种方法来为这些元素中的每一个创建不同的ID

您可以在创建新HTML元素的循环中为新元素生成增量ID,例如,假设您将输入附加到ID为
父元素的元素

    function makeElements(){
      var parent = document.getElementById('parent-element');
      for (var i = 1; i < 11; i++) {
        var newElement = document.createElement('input');
            newElement.id = 'input-number-' + i;
            newElement.type = "checkbox";
        parent.appendChild(newElement);
      }
    }
函数makeElements(){
var parent=document.getElementById('parent-element');
对于(变量i=1;i<11;i++){
var newElement=document.createElement('input');
newElement.id='输入编号-'+i;
newElement.type=“复选框”;
parent.appendChild(新元素);
}
}

正如connexo所评论的那样,您最好使用现有的库来处理这类事情。

帮自己一个大忙,开始使用类似Knockout.js的库。这会让你的生活变得更轻松。