Javascript innerHTML超出范围的问题

Javascript innerHTML out of scope issue?

本文关键字:问题 范围 innerHTML Javascript      更新时间:2023-09-26

我想知道为什么下面的jsfiddle不起作用。如果有什么办法的话。任何想法都将不胜感激。我认为,由于html当时会包含变量名,所以它会起作用。。。但事实并非如此。奇怪的我使用的是firefox,最新版本。

应该发生什么:onclick应该发出警报!

http://jsfiddle.net/VqA9g/125/

您的方法调用需要引用list_name。

以下是经过编辑的有效脚本:

function example() {
    for ( var i = 0; i < list.length ; i++ ) {   
        var list_name = list[i];
        var div = document.getElementById('testing');
        div.innerHTML += "<txt onClick='"test('" + list_name + "');'">" + list_name + "</txt><br>";
    }
}

有了这个小小的改变,我可以看到警报在起作用。

您忘记将单词括在引号中。所以在您的代码中,它是作为一个变量传递的,这是没有定义的。这是一个更新版本:

http://jsfiddle.net/VqA9g/131/