私はあなたのフィドルを見ましたが、余分な閉じた金具があります。これはうまくいくはずです。
function myFunction() {
alert("I am an alert box!");
return false;
};
あなたのフィドルはこのように見えた:
function myFunction() {
alert("I am an alert box!");
}
};
EDIT 1: ユーザーがフォームを送信したくなかったので、私はreturn false
を追加しました。
EDIT 2:
誰もJSフィドルの問題を説明したいと考えていないので、私は刺しにそれを取るでしょう。
オリジナルのJS Fiddleでは、サイドバーメニューの2番目のドロップダウンで "onLoad"が使用されています。
この設定が機能しない理由は、JS Fiddleがonload関数でjavascriptコードを実行するためです。これは、myFunctionが有効範囲外であることを意味します。
このため、ドロップダウンメニューには「ラップインなし」と「ラップインなし」のいずれかのオプションを使用する必要があります。これら2つのオプションを代わりに使用すると、関数myFunction
はグローバルスコープになります。
私は物事を明確にすることを望む。
編集3
あなたはonloadイベントを使用したい場合はなかったです。代わりにクリックイベントハンドラを追加し、送信ボタンマークアップのonclick
属性を削除することができます。
一般に、javascriptを使用してイベントハンドラを設定する方がよいでしょう。
document.getElementById('hit').addEventListener('click', function() {
alert("I am an alert box!");
});
あなたはjQueryのを使用したい場合は、あなたがこれを行うことができます:
$('#hit').click(function() {
alert("I am an alert box!");
});
は 'onclickの=試してみてください "MyFunctionをを(); falseを返す"'が、これは、フォームの作業を停止します。 – Oliver
oliverが言ったように、あなたが 'return false;を実行すると、あなたのJSは実行するべきですが、あなたのフォームが提出しないように投稿が継続しないようにします。 –
とにかくハンドラを実行してはいけませんか? –