在Javascript,jquery中从var值动态分配唯一id

时间:2014-01-21 06:58:24

标签: javascript jquery html

在我的程序中,我使用javascript生成一个表,然后将其附加到html文档:

var html = "<table>";
for (var r = 0; r < rows; r++)
{
    html += "<tr>";
    for (var c = 0; c < cols; c++)
    {
        html += "<td class=\"covered\"><input type=\"image\" src=\"imageURL.com"/></td>";
    }
    html += "</tr>";
}

html += "</table>";
$(".gameboard").append(html);

我希望每个输入元素都有一个唯一的ID - 特别是一个数字。我希望有一个初始化为1的变量,每次创建TD元素时它都会增加。此变量的值将用作输入元素ID。我没有找到任何具体方法。提前谢谢!

4 个答案:

答案 0 :(得分:1)

试试这个:

var html = "<table>";
var index=0;

for (var r = 0; r < rows; r++)
{
html += "<tr>";

for (var c = 0; c < cols; c++)
{
    html += "<td class=\"covered\"><input id='img"+(index++)+"' type=\"image\" src=\"imageURL.com"/></td>";
}
html += "</tr>";
}

html += "</table>";
 $(".gameboard").append(html);

答案 1 :(得分:0)

尝试在global variable中添加count let incrementinner loop,例如,

var html = "<table>";
var count=1;// use this variable in inner for loop and increment it by 1
for (var r = 0; r < rows; r++)
{
    html += "<tr>";
    for (var c = 0; c < cols; c++){
        html += "<td class=\"covered\">\
                  <input id='"+(count++)+"' type=\"image\" src=\"imageURL.com\"/>\
                </td>";
    }
    html += "</tr>";
}

html += "</table>";
$(".gameboard").append(html);

答案 2 :(得分:0)

试试这段代码:

html += "<td id='td-" + c +"'class=\"covered\"><input value='td-" + c +"' type=\"image\" src=\"imageURL.com"/></td>";

答案 3 :(得分:0)

使用此

 var ID= new Date().getTime();