2012-04-16 10 views
0

まあ、別のtry任意の結果を返しません:

これは私が前に$ .postをコードで間違った何かを()作っ多分使用しているすべてのjqueryのコードです。私はそれ

function Login() 
{ 
    //just to try 
echo json_encode(array('reply'=>'foo')); 
} 

...私はPHPファイルにのみ、このコードを試してみました、それはまだ何も返さない

function setLogin() 
{ 

$('#login-form').submit(function(e) { 
    e.preventDefault(); 
      //passing form field to vars 
    var formUsername=$("#login-form #username").val(); 
    var formPassword=$("#login-form #password").val(); 
      //checks on fields lenght 
    if((formUsername.length<6)) 
    { 
     $("#ajax-output").html("<div class='error'>Attenzione username troppo breve!</div>"); 
    } 
    else if((formPassword.length<6)) 
    { 
     $("#ajax-output").html("<div class='error'>Attenzione password troppo breve!</div>"); 
    } 
    else 
    { 
     $.post(
          //the url 
      '?module=login', 

          //data got from login form 
      { 
       "username": formUsername, 
       "password": formPassword, 
      }, 
      //response 
      function(data){ 
       $("#ajax-output").html(data.reply) 
      }, 
      //type 
      "json" 

     ); 
    } 
}); 
} 

...同じ形のonclickを持つ次の関数を呼び出しますまだ動作しません...

+0

何故私は何故前に?エラーが発生してサーバーが遅くなることはありません。 –

+0

jsonが設定されているときに返信が返されない(data.reply) –

+0

@は問題ではありません。PHPコードはうまく動作します。多くの時間テストされています... $ .postで設定されたjsonでのみ動作します –

答えて

2

投稿が最初に実行されていますか?

使用Firebug!(またはChromeに組み込まれている開発ツール)

あなたは離れて、Webページのすべてのビットを選択するために放火犯を使用することができます。

このタブには、AJAXリクエスト、その結果、ヘッダー、コンテンツなど、ブラウザによって行われたすべてのリクエストが表示されます。

あなたのリクエストが実際に行われているかどうか、結果がどのようなものかを確認するために使用してください。それからそこから取り出してください。

0

レスポンス時にコンテンツタイプのヘッダーを設定していることを確認してください。JSONを受け取っていないとブラウザがJSONを使用しようとしない可能性があります。

function Login() 
{ 
    header('Content-Type: application/json'); 
    echo json_encode(array('reply'=>'foo')); 
} 
関連する問題