2011-08-12 50 views
9

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に表示されません。

+1

は "動作しませんでしたが、" 問題の説明ではありません。 –

+0

[単純な例はJSFiddleでは動作しません](http://stackoverflow.com/questions/5431351/simple-example-doesnt-work-on-jsfiddle) – Xufox

+0

@ thomasf1:早くて完成したhttps://stackoverflow.com/a/7043684/295783 – mplungjan

答えて

0

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

のJSフィドルあなたが提案するものよりもはるかに簡単です申し訳ありませんが...

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

//Your code 


}); 

enter image description here

+5

この回答は分かりません。これは説明ですか?解決策 ? –

+0

これは動作しません – Dan

5

function out of the onLoad/onReadyそれ以外のスコープの内側に配置され、ボタンは機能にアクセスできません。 JavaScriptの設定で、「ロード・タイプ」ドロップダウンで

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

選択No wrap - in <head>:あなたのケースでは、コードはこのようなルックスを生成 ませラップ(頭を)

使用しないする必要があります。

Screenshot of the dropdown mentioned above

+0

ありがとう!私は何かが欠けていたと確信していた。愚かな私! – thomasf1

+2

さて、それは今動作します。しかし、正確には*ラップ(頭)を意味しない*?それは何をしているのか、していないのですか? – erik

+1

これは受け入れられた答えでなければなりません... – Xufox

4

変更の代わりに "onDomReady" の "何のラップ(頭)" を実行しないためのコード。マークアップにはあなたの機能がそのまま表示されません。

-1

を書くものは何でもするために、このようなので、何か...

"onclick"属性を持つjs関数を呼び出す場合は、javascritコードを直接頭に入れてください。domreadyなどは必要ありませんs。

第2に、関数名の前に "javascript:"を含める必要があります。

参照:http://jsfiddle.net/XNJxT/1838/

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

[この美しい答え](http://stackoverflow.com/a/11348403/1908115)で述べたように、 'javascript:'はお勧めできません(悪い習慣)。 – erik

関連する問題