2017-12-04 6 views
0

私はAJAX (jQuery)を使ってフォームをuser-ajax.phpに投稿していますが、ページは実際には"success"のような応答をエコーアウトする必要があります。その同じ成功へイムが何かをやっていますが、ここで働いていない場合は、応答値をテストAJAXコードイムにPHPのコードがあるajaxとphpから変数を返すと成功

function ajaxlogin($config,$lang){ 
    //something 
     $response = 'success'; 
     echo $response; 

} 

Ajaxコードは:

$(document).ready(function() { 
    $("#login").click(function() { 
     $("#login-status").show(); 
     var action = $("#lg-form").attr('action'); 
     var form_data = { 
      action: action, 
      username: $("#username").val(), 
      password: $("#password").val(), 
      is_ajax: 1 
     }; 

     $.ajax({ 
      type: "POST", 
      url: ajaxurl, 
      data: form_data, 
      success: function(response) { 
       alert (response); //this alert show "success" 
       if (response == 'success') { 
        $("#lg-form").slideUp('slow', function() { 
         $("#login-status").removeClass('info-notice').addClass('success-notice'); 
         $("#login-status #login-status-message").html('Logged in success. Redirecting....'); 
         location.reload(); 
        }); 
       } 
       else { 
        $("#login-status").removeClass('info-notice').addClass('error-notice'); 
        $("#login-status #login-status-message").html(response); 
       } 
      } 
     }); 
     return false; 
    }); 
}); 

私の問題はあるのアラート表示されること"success"命令が実行されていない場合は、直接他の命令に進む。"if (response == 'success')"命令は実行されない。通常'success'== 'success'です。

+0

応答文字列に他の文字は含まれていませんか?同様に、 'console.log(response.length)'とそれが7であることを確認できますか? – Pointy

+0

それをここのようにトリムします:if($。trim(response)== 'success'){}あなたはそこに空白があるかもしれません。 –

+0

PHPファイル/関数 'function ajaxlogin($ config、$ lang)'を使用している完全で正確なコードを追加する必要があります –

答えて

0

あなたの助けのためにたくさん。私はまさにあなたがconsole.log(response.length)を示唆したようにして、それを示しています。そして、私はif($。trim(response)== 'success')を使いました。あなたのサポートのためにたくさんご協力ください

関連する問題