0

我查看了 chrome 中的“网络”选项卡,它正在发送正确的数据(操作、用户名、密码),但它没有将消息返回到 $('#return_login')。我的代码有什么问题?

jQuery:

$(function() {

  $('.login').hide();

    $('#login').click(function() {
        event.preventDefault();
        $('.login').fadeIn(500);

        $('#login_submit').click(function() {

            var username = $('#username').val();
            var password = $('#password').val();

            $.ajax({
                url: './controller',
                type: 'POST',
                data: 'action=login&username=' + username + "&password=" + password,
                success: function(return_login) {
                    $('#return_login').html(return_login);
                }
            });
        });
    });
});

PHP(根本不使用方法类,忽略它):

<?php
    require_once('Methods.php');

    $Methods = new Methods;

        $action = @$_POST['action'];

        switch($action) {
            case 'login':
                echo 'lol';
            break;
        }
?>
4

2 回答 2

0

尝试以 json 格式发送数据:

data:{action:'login',username:username,password:password}
于 2013-10-04T03:42:55.467 回答
0
 $.ajax({
                url: '/controller',
                type: 'POST',
                data:{action:'login',username:username,password:password},
                success: function(return_login) {
                    $('#return_login').html(return_login);
                }
            });

//php

 $action = @$_POST['action'];

并在 php 中确保在 switch 语句之后放置一个退出

于 2013-10-04T03:45:04.890 回答