Javascript:JSFiddle 的问题 - 输出字符串的简单 onclick 事件不起作用

Javascript: Trouble with JSFiddle - Simple onclick event to output String does not work

本文关键字:onclick 简单 事件 不起作用 字符串 JSFiddle 问题 Javascript 输出      更新时间:2023-09-26

我有一个超级简单的点击事件:

单击该按钮以触发一个函数,该函数将在 id="demo" 的 p 元素中输出"Hello World"。

<button onclick="myFunction()">Click me</button>
<p id="demo"></p>
<script>
function myFunction() {
    document.getElementById("demo").innerHTML = "Hello World";
}
</script>

在这里工作正常:http://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_onclick

当我在我的机器上尝试它时工作正常。

但它不适用于 JSFiddle:

http://jsfiddle.net/6nrh408f/

有谁知道为什么?

这是一个范围问题。以这种方式将此函数分配给全局变量:

myFunction = function() {
    document.getElementById("demo").innerHTML = "Hello World";
}

演示:

https://jsfiddle.net/6nrh408f/1/

因为在小提琴中,您正在定义onload函数中的函数而不是head。因此myFunction范围不是全局的,并且在onclick处理程序中使用时不可访问/定义。

只需将左上角的选择框更改为无换行 - 在...而不是onLoad

检查小提琴已更新。