Javascript 如何将变量传递给使用JS创建的表中的函数?

Javascript 如何将变量传递给使用JS创建的表中的函数?,javascript,html,Javascript,Html,我用JS创建了一个表,我想把行的Id传递给一个外部函数“COPY”。我很难做到这一点 for (var i =1; i <= (strln/2); i++) { // creates a table row var row = document.createElement("tr"); row.setAttribute("id",""+i+""); row.setAttribute("onclick",""+'COPY(i)'+""); } for(var i=1;i您当前直接传递标识符

我用JS创建了一个表,我想把行的Id传递给一个外部函数“COPY”。我很难做到这一点

for (var i =1; i <= (strln/2); i++) {
// creates a table row
var row = document.createElement("tr");
row.setAttribute("id",""+i+"");
row.setAttribute("onclick",""+'COPY(i)'+"");
}

for(var i=1;i您当前直接传递标识符
i
,但这是指上一次迭代后的值。可以直接传递该值:

 'COPY(' + i + ')'

请注意,实际上应该使用
.addEventListener
..

连接字符串,以便变量获得实际值,而不是成为字符串


for(var i=1;i除非您需要使用字符串连接和
setAttribute
执行此操作,否则您可以这样简单地尝试

for( var i=1; i <= ( strln / 2 ); i++ ) {

    var row = document.createElement('tr');
        row.id=i;
        row.onclick=function(e){
            COPY( this.id )
        }.bind( row )
}

for(var i=1;i
row.setAttribute(“onclick”,“COPY”(+i+)));
。这是基本的字符串连接/操作。
'COPY(i)
在字符串中。恐怕是习惯使然