Javascript for 循环变量不起作用

Jan*_*dus 2 javascript loops for-loop onclick

我的 javascript 函数内的 for 循环有问题。该变量i不能作为函数的参数showAlbum(i)。为什么会这样?

var out = "<table>";
for(i = 0; i < arr.length; i++) {
            out += "<tr><td><a href=''onclick='showAlbum(i);' >"+
                arr[i].artist +
                " - " +
                arr[i].title +
                "</a></td></tr>";
        }
out += "</table>";
Run Code Online (Sandbox Code Playgroud)

Jam*_*lly 5

因为i用引号括起来的是文字字符i,而不是i变量中保存的值。您需要在报价之外对其进行评估:

out += "<tr><td><a href=''onclick='showAlbum(" + i + ");' >"
Run Code Online (Sandbox Code Playgroud)