为什么这个简单的JSFiddle不起作用?

时间:2011-08-12 17:00:53

标签: javascript html jsfiddle

我想在JSFiddle中添加一些代码。它没用。缩小范围我甚至无法使用这个最简单的代码:

JSFiddle

function displaymessage() {
  alert("Hello World!");
}
<form>
  <input type="button" value="Click me!" onclick="displaymessage()" />
</form>

<p>By pressing the button above, a function will be called. The function will alert a message.</p>

alert框未显示在JSFiddle中。

8 个答案:

答案 0 :(得分:28)

在JavaScript设置的“加载类型”下拉列表中选择No wrap - bottom of <head>

Screenshot of the dropdown mentioned above

答案 1 :(得分:6)

您需要带上function out of the onLoad/onReady,否则它会被放置在另一个范围内,而您的按钮无法访问该功能。在您的情况下,您需要使用     没有包裹(头)

生成的代码如下所示:

Ext.onReady(function() {
    function displaymessage()
    {
        alert("Hello World!");
    }
});

答案 2 :(得分:4)

更改代码以运行“no wrap(head)”而不是“onDomReady”。您的功能对您的标记不可见。

答案 3 :(得分:0)

抱歉,但......比你的建议简单得多......

如果你想用“onclick”属性调用一个js函数,把你的javascrit代码直接放在头上,你就不需要domready或similars。

其次,您需要在函数名称前包含“javascript:”。

请参阅:http://jsfiddle.net/XNJxT/1838/

<input type="button" value="Click me!" onclick="javascript:displaymessage()" />

答案 4 :(得分:0)

如果您使用html onclick =“ func()”

,也许有些人需要将功能移到 document.ready 之外。
$(document).ready(function() {
  ...
}

function func(){
  ...
}

答案 5 :(得分:0)

如果还有问题,请检查是否有

  1. 作为浏览器扩展安装的 AdBlockers? (即 AdBlocker Plus)

enter image description here

  1. 关闭 JSFiddle 中的 AdBlockers 并再次运行。

我希望这对某人有所帮助。

谢谢。

答案 6 :(得分:-4)

我的问题是,当我输入脚本标签时,我输入了它:

script type="javascript/text"

而不是:

script type="text/javascript"

现在可行。

答案 7 :(得分:-5)

http://jsfiddle.net/praveen_prasad/XNJxT/14/

对于你写的任何东西,Js都是这样的东西

window.addEvent('load',function(){

//Your code


});

enter image description here