我有以下 HTML 代码。
<select onChange="TestCall()">
<option>Text1</option>
<option>Text2</option>
<option>Text3</option>
<option>Text4</option>
</select>
我的 JavaScript 有一个简单的警告消息,如下所示。
function TestCall()
{
alert("Test");
}
检查以下 Jsfiddle。我在 jsfiddle 的 javascript 区域添加了我的脚本。它不起作用。
但是如果我将脚本 block 移动到 jsfiddle 的 HTML 区域内,它就可以正常工作。检查以下内容。
我的代码有什么问题?有什么想法吗?
最佳答案
默认情况下,JSFiddle 将 JS block 包装到 onLoad
中功能:
...导致类似的事情:
window.onload = function() {
function TestCall() {
alert("Test");
}
};
这意味着您的 TestCall
方法超出全局范围,无法从 HTML 属性访问。
将选项更改为 No wrap - in <head>
或 No wrap - in <body>
它将起作用。
关于javascript - 简单的 Javascript 函数在 jsfiddle 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23993308/