初めての質問...私のページのこのリンク
<a onclick="$('#mainbody').load('pages/login.php', tester());">Login</a>
このフォームを生成します
<form id="form">
<b>Email Address:</b> <input type="email" name="usrEmail" placeholder="email address" required><br />
<b>Password:</b> <input type="password" name="usrPass" placeholder="password" required><br />
<input type="submit" value="Log in">
</form>
私の.jsにはこれが含まれています。
function tester(){
$("#form").submit(function() {
alert('Handler called.');
return false;
});
}
...フォームが送信されても何も起こりません。ただし、リンクを変更すると
<a onclick="$('#mainbody').load('pages/login.php', function(){$( '#form' ).submit(function() { alert('Handler called.'); return false;});});">Login</a>
...これは完璧に機能します。機能的には、名前付き関数の呼び出しとコールバック自体での定義の違いはわかりませんが、明らかにブラウザーは違います! 私は何を間違っていますか?構文ですか?タイミング?または、私はまだjQueryで自分の道を見つけています.#form AFTERを参照するイベントハンドラを呼び出しているにもかかわらず、関数が最初に作成されたという事実がそれを無視するからですか?