1

私は持ってい<span>ます<a>

 <a class="small-yellow-button float-right" id="signin" href="javascript:void(0);">
   <span>Sign In</span>
 </a>

呼び出し元:

$(document).ready(function(){
    $("#signin").click(function() {
    $('#form-signin').submit(); 
    });
});

これは次を呼び出します:

<form method="post" action="" id="form-signin" onSubmit="login(); return false;" accept-charset="UTF-8" autocomplete="on">

function login()
{
   $.post(....), function(data)
{
  // code does NOT reach here.
  alert(data);
}
} 

この関数は ajax 呼び出しを発行し、サーバーで要求を取得して正しい応答を返しますが、どういうわけかこの関数で応答が得られません。この関数を直接呼び出すことができるため、この関数が機能することはわかっていますlogin()が、どういうわけか、プロジェクトの javascript->form submit->javascript のループを通過する必要があります。

助けてください...

4

2 に答える 2

3

フォームから全体を削除して、onsubmit代わりにこれを使用します。

$(document).ready(function(){
    $("#signin").click(login);
});

フォームが正常に送信されないようにするには、これをドキュメント準備完了ブロック内に追加します。

$('#form-signin').submit(function(){
    return false;
}); 

今、あなたはlogin関数が機能すると言いますが、あなたがそれのために投稿したコードは確かに機能しません...

于 2012-05-25T22:15:33.790 に答える
1

そのはず:

$.post( url , data , function(data) { 
   //code
 });
于 2012-05-25T22:14:13.060 に答える