表单即使不提交也显示谢谢消息

时间:2012-03-28 14:44:03

标签: javascript jquery ajax

我是Javascript和Jquery的新手。我有一份表格,我想提交,并在提交时显示“谢谢!”表单下方的消息。我已经能够将表单提交到我们的数据库并显示感谢信息。唯一的问题是,无论字段是否填写,都会显示感谢信息。我已经尝试过Jquery的.show()来显示一个带有感谢信息和replaceWith()方式的隐藏div。你能帮忙的话,我会很高兴。感谢。

这是脚本:

<script type="text/javascript">
$(document).ready(function() {
    $("#My-Form").submit(function(event) {
        event.preventDefault();
        submitform();
    })

    $("#My-Form").validate({
        rules: {
            firstname: {
                required: true
            },
            lastname: {
                required: true
            },
            phone: {
                required: true
            },
            email: {
                required: true,
                email: true
            },
            address: {
                required: true
            },
            city: {
                required: true
            },
            state: {
                required: true
            },
            zip: {
                required: true,
                number: true
            }
        },
    });
});

function submitform() {
    $.post('URL', $("#My-Form").serialize(), returnResults, 'json');
    $("#MyForm").replaceWith("<p><h2>Thank You!</h2></p>");
}

function returnResults() {
    //SHOW THANK YOU MESSAGE
}
</script>

1 个答案:

答案 0 :(得分:0)

我正确地告诉你。我想你的说法是谢谢你的消息,无论输入是否正确。因此,为了防止这种情况,请查看valid()

的jquery.validate.js方法

在您的returnResults()方法中,您可以执行此操作。

function returnResults() {
    if ($("#mobile-landing").valid()) {
        //show thank you
    }
}
相关问题