Javascript 如何设置元素';s id作为变量?

Javascript 如何设置元素';s id作为变量?,javascript,jquery,variables,Javascript,Jquery,Variables,我有一些jQuery脚本,在其中我向表中添加了一些行(当用户按下按钮时)。我的问题是,我想动态更改行中元素的id。我已经设置了一个全局变量I,将其设置为表中某些元素的id。问题是,经过一些调试后,我发现id根本没有改变,而是保持为字母I(而不是变量I设置为0并在用户每次按下按钮时增加)。有什么想法吗 var i=0; var a1=i.toString().concat("1"); var a2=i.toString().concat("2"); var a3=i.toString().conc

我有一些jQuery脚本,在其中我向表中添加了一些行(当用户按下按钮时)。我的问题是,我想动态更改行中元素的
id
。我已经设置了一个全局变量
I
,将其设置为表中某些元素的id。问题是,经过一些调试后,我发现
id
根本没有改变,而是保持为字母I(而不是变量
I
设置为0并在用户每次按下按钮时增加)。有什么想法吗

var i=0;
var a1=i.toString().concat("1");
var a2=i.toString().concat("2");
var a3=i.toString().concat("3");
$("#table1").append("<tr><td><center><input id=\"a1\"></input></center></td><td>
center><button id=\"a2\">Load</button></center></td><td ><img id=\"a3\"></td>
</tr>");

$("#a2").click(function(){
   $z=$("#a1").val();
   $("#a3").attr("src",$z);
   i++;
});
var i=0;
变量a1=i.toString().concat(“1”);
变量a2=i.toString().concat(“2”);
变量a3=i.toString().concat(“3”);
$(“#表1”)。追加(”

中心>加载这是因为您直接将它们作为字符串写入。您需要将它们连接到实际字符串中。您可以使用
+
将字符串连接在一起

$("#table1").append(
  "<tr>" +
    "<td>" + 
      "<center><input id=\"" + a1 + "\" /></center>" +
    "</td>" +
    "<td>" +
      "<center><input id=\"" + a2 + "\" /></center>" +
    "</td>" +
    "<td>" +
      "<center><input id=\"" + a3 + "\" /></center>" +
    "</td>" +
  "</tr>"
);
$(“#表1”)。追加(
"" +
"" + 
"" +
"" +
"" +
"" +
"" +
"" +
"" +
"" +
""
);

因为它是值得的,不应该使用它。你也可以考虑创建一些模板,而不是直接在JavaScript中生成HTML作为字符串。

你试过使用<代码> $[(“x”a3))吗?(“ID”,NEWID)< /C> >。谢谢。它工作得很好。但是我还是不明白为什么。(Alter)因为在字符串中间写一个变量名并没有把它的值放在那里。如果是这样的话,如果你已经有一个名为“i”的变量(或者任何其他单词组合),你就永远不能把单词“i”放在一个字符串中。它将该变量的值追加到该字符串的末尾。