this formを送信すると、フォームが送信されている間に、すぐに「オブジェクトは機能ではありません」というエラー(Chrome版)が表示されます。私のバグは何ですか?このフォームの「オブジェクトは関数ではありません」という理由は何ですか?
私はそれが愚かなものだと確信していますが、私の人生にとっては何が間違っているのか分かりません。
this formを送信すると、フォームが送信されている間に、すぐに「オブジェクトは機能ではありません」というエラー(Chrome版)が表示されます。私のバグは何ですか?このフォームの「オブジェクトは関数ではありません」という理由は何ですか?
私はそれが愚かなものだと確信していますが、私の人生にとっては何が間違っているのか分かりません。
他の回答は正しいですが、jQueryをより適切に使用することで、このような問題を回避できます。
formタグの内側代わりのインラインのJavaScript、フォームにIDを追加し、このようなコードを持っている:
$(document).ready(function() {
$("#myform").bind("submit", validate);
});
形式は次のようになります。
<form id="myform">
そして忘れてはいけません提出を防ぐためにreturn false;
を関数自体に追加します。
JSは、validate
を関数として適切に扱います - フォームタグ内のインラインのとき、フォーム要素を最初に見て、ボタンを見つけました - したがってエラーが発生しました。
あなたは 'validate'機能を持っていて、submitボタンには 'validate'というIDがあります。それらの1つを変更してください。
jquery#を取り出すことができます – Myforwik
関数名validate()
をformVal()
に変更しました。これで、うまく機能しています。これは、IDがvalidateの要素があるためです。 formVal()
(またはvalidate()
から離れて何でも)へ
変更関数名、そしてこれを言うためにformタグを変更するが:
<form onSubmit='return formVal();'>
それは今言って立ち上がる「有効な!」フォームの下にある見出しタグに挿入します。エラーもありません。
素敵な答え - 私は間違いなくjQueryバインディングをインライン関数に使用します。 –