Ajax总是在成功的基础上重新编写

时间:2016-04-29 23:30:23

标签: javascript java jquery ajax

我已经在联系人注册表上的Java Web App上成功实现了Ajax,但是当我注册了关于ajax成功的新联系人时,我的页面刷新了!我不希望我的页面在成功时刷新,我只想显示成功消息。这是我的代码:

alta: function () {
        $.ajax({
            type: "POST",
            cache: false,
            timeout: 30000,
            dataType: "json",
            url: "altaContacto.con", //servlet
            data: {
                name: $("#name").val(),
                email: $("#email").val(),
                phone: $("#phone").val(),
                company: $("#company").val(),
                subject: $("#subject").val(),
                message: $("#message").val()
            },
            success: function (data)
            {
                if (data.estatus === "OK")
                {
                    alert("Tnx for registry.");
                } else
                {
                    alert("Error");
                }
            } //END OF SUCCESS
        });
    }

我有什么遗失的东西吗?非常感谢!

2 个答案:

答案 0 :(得分:2)

调用此函数时,还必须停止表单的默认传播。例如:

$('#submit').on('click', function () {
    alta(); // call the function
    return false;
});

这就是全部

答案 1 :(得分:1)

我认为,你必须添加你的功能' alta'事件处理程序,即。 alta : funtiton(event),之后添加了事件处理程序,最后需要取消事件而不停止事件的进一步传播。证明这段代码:

alta: function (event) { $.ajax({ type: "POST", cache: false, timeout: 30000, dataType: "json", url: "altaContacto.con", //servlet data: { name: $("#name").val(), email: $("#email").val(), phone: $("#phone").val(), company: $("#company").val(), subject: $("#subject").val(), message: $("#message").val() }, success: function (data) { if (data.estatus === "OK") { alert("Tnx for registry."); } else { alert("Error"); } } //END OF SUCCESS }); event.preventDefault(); }

我希望能帮助你。有关详情,请访问此网址:https://developer.mozilla.org/en-US/docs/Web/API/Event/preventDefault