Ajax,而不是发布或获取?

时间:2016-03-17 02:11:19

标签: php ajax

我一直使用Ajax主要用作POST,来处理思考,但现在只想打开一个简单的登录页面进入DIV(并且正在这样做)但是现在当我添加时出现了问题这到PHP代码:

<?php
if (isset($_POST))
{

}
else
{
    echo "
    <html>
        <head>
            <meta charset='utf-8'>
            <link rel='stylesheet' type='text/css' href='assets/css/main.css'>
        </head>
        <body>
            <div class='page-header'>
                <h1>Preencha os campos e carregue em enviar</h1>
            </div>
            <form>
                <div class='form-group'>
                    <label for='exampleInputEmail1'>Endereço Email</label>
                    <input type='email' class='form-control' id='exampleInputEmail1' placeholder='Email'>
                </div>
                <div class='form-group'>
                    <label for='exampleInputPassword1'>Palavra-Pass</label>
                    <input type='password' class='form-control' id='exampleInputPassword1' placeholder='Palavra-Pass'>
                </div>
                <button type='submit' class='btn btn-default'>Enviar</button>
            </form>
        </body>
    </html>";
}

这是Ajax代码:

$(function() {
    $('.navmenu a').bind('click', function(event) {
        event.preventDefault();
        var urlToGo = $(this).attr('href');
        if ($( window ).width() <= "992" && !$(this).hasClass('dropdown-toggle'))
        {
            $('.navmenu').offcanvas('hide');
        }
        $.ajax({
            url: urlToGo,
            dataType: 'html',
            success: function(result)
            {
                $(".container").html(result);
            }
        });
        $('html,body').animate({
            scrollTop: 0
        }, 700);
        console.log(urlToGo);
    });
});

当我按下用于使用Ajax的链接时,它会在div容器上放一个空页面,我在这里做错了什么?如果我将(isset($ _ POST))更改为(!isset($ _ POST)),它将显示正确的内容,并且我不希望这是一个帖子。

这里的逻辑有什么问题?!

提前致谢

1 个答案:

答案 0 :(得分:1)

因为$_POST是PHP的全局变量,所以它存在于每个php线程中,因此isset($_POST)将返回true,在您的示例中,$_POST的值是空数组。你可以尝试一下打击:

if (!empty($_POST)) {

} else {
    echo 'your html'
}

顺便说一下,我认为$_SERVER['REQUEST_METHOD']是一种更精确的判断请求使用何种http请求方法的方法。