JQuery PHP $ .post()服务器响应将无法正常工作

时间:2012-02-19 19:19:17

标签: php javascript jquery

我正在试图弄清楚如何从我的$ .post()中获得回复,而我似乎无法弄明白。它在IE中运行得很好,但在FF和Chrome中窒息。我相信这很简单。我已经阅读了很多帖子,并在Google上尝试了所有的建议,但仍然没有运气。有人能看出我做错了吗?我应该期待的回答是testing

忘了包括我得到的东西;在Chrome和FF Firebug控制台中,我看到了.error()消息,所有消息都是'错误'...没有说明。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>

HTML

<form id="frm">
    <input type="text" name="usr" />
    <input type="submit" value="Click" />
</form>

JQuery的

$(function()
{
    $('form#frm').submit(function()
    {
        $.post('process.php',$('#frm').serialize(),function(response)
        {
            console.log('PHP returned : '+response);
        })
        .error(function(XMLHttpRequest,textStatus,errorThrown)
        {
            console.log('Error with ajax Function: '+ textStatus+' '+errorThrown);
        });
    });
});

PHP

<?php
print('testing');
?>

编辑(对于遇到相同问题的其他人,此代码有效)

$(function()
{
    $('form#frm').submit(function(e)
    {
        e.preventDefault();
        $.post('process.php',$('#frm').serialize(),function(response)
        {
            /* Do something with response */
        })
        .error(function(XMLHttpRequest,textStatus,errorThrown)
        {
            alert('Error with ajax Function: '+ textStatus+' '+errorThrown);
        });
    });
});

1 个答案:

答案 0 :(得分:1)

我认为,既然您没有指定form action并且不通过在事件处理程序中返回false来阻止表单提交,则页面正在刷新(您发布到同一页面)在执行AJAX回调之前,它只是重新加载页面。但这并不能解释错误信息。

相关问题