質問

この質問にはすでに答えがあります:

この非常にシンプルなjsfiddleを機能させることはできません。ボタンがクリックされたときにテストを警告することになっています。ここに何が欠けていますか?

http://jsfiddle.net/u9ng6/2/

役に立ちましたか?

解決

負荷方法をラップ(ヘッド)に変更する必要があります。

JavaScriptがどのようにロードされるか、メソッド署名が読み取られるときに関係しています。 http://jsfiddle.net/u9ng6/11/

他のヒント

jqueryフレームワークは、ロードするように選択されます onDomReady したがって、あなたの関数はjQuery匿名関数に包まれています $(function(){ }); 見えない。 jqueryを変更してロードするかです no wrap (head) または、グローバル範囲で機能を定義します。

見る ここ.

あなたはあなたを定義する必要がありました validateForm そのようなHTMLでそれを使用できるように、グローバル範囲で機能します。それ以外の場合は、関数として定義されていました 内部 の範囲 onDomReady イベントは、その範囲外でアクセスできません。

より「jquery-ish」アプローチは、jqueryを使用して処理することです click このようなイベント:

$("#id_btnSubmit").click(validateForm);

見る ここ その提案の例として。

jquery + ondomedyreadyを使用しています。これは、あなたが書いたJavaScriptが内に配置されることを意味します

$(function() {

});

これにより、スコープの問題が発生します。代わりに次のことを試すことができます。

window.validateForm = function() {
}
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top