Javascript没有从php接收数据

时间:2014-07-10 08:25:51

标签: javascript ajax

我有一个发送到php的表单,其中包含一些文本字段和图像字段。但是我的javascript没有收到来自php的回声。它将我重定向到一个php,数据在那里回显。想知道我的javascript为什么这样做。 谢谢你的时间!

<script type="text/javascript" >


    $("button#signinbutton").click(function() {
    if ($("#list").val() == "") {
        $("p#result").html("Please enter both userna");
    } else {

        $.post($("#submitform").attr("action"), $("#submitform").serializeArray(), function(data) {

             var reply = data.replace(/\s+/, "");
           if($.trim(data) == 'success'){
            location.replace("account.html")

           }
            else   
            {

            $("p#result").html(data);
            }
        });
    }
});

$("#submitform").submit(function() {
    return false;
});

    </script>

1 个答案:

答案 0 :(得分:0)

听起来您的表单正在进行标准表单提交,浏览器会重新加载页面。很可能是因为没有将事件处理程序包装在DOM就绪函数中。在结束</body>之前,使用DOM ready包装器,或将代码移动到页面的末尾。在分配事件时,DOM中不存在表单和按钮,因此它们永远不会被触发。

$(function(){
    $("button#signinbutton").click(function() {
        ...
    });

    $("#submitform").submit(function() {
        return false;
    });
});

这将获得AJAX提交并将阻止页面刷新。如果您有文件上传输入,则无法使用serializeArray()See this question for AJAX file uploads