无论响应如何,Jquery都会对ajax响应执行其他操作

时间:2012-02-27 08:58:00

标签: jquery ajax debugging if-statement

嗨,昨晚我完成了12小时的尴尬网络开发和今天早上的工作,无论是否“成功”的响应,它仍然会执行其他操作。任何人都可以看到任何错误,因为我不能:(

<script type='text/javascript'>
$(document).ready(function(){

    $("#submit").click(function(){
        if ($('#name').val().length != 0 && $('#email').val().length != 0 && $('#message').val().length != 0 && $('#code').val().length != 0){  
            var action = $("#contact_form").attr('action');
            var form_data = {
                name:$("#name").val(),
                email:$("#email").val(),
                message:$("#message").val(),
                code:$("#code").val(),
                is_ajax:1
            };
            $.ajax({
                type:"POST",
                url:action,
                data:form_data,
                success: function(response) {
                    if(response == 'success')
                        $("#contact_form").slideUp('slow', function() {
                            $("#contact_message").html("<p class='success'>Thanks for your message, please close this window.</p>");
                        });
                    else
                        $("#contact_message").html("<p class='error'>Security code not correct.</p>");
                }
            });
            return false;
        };
    });

    // refresh captcha
    $("#refresh").click(function(e){
    e.preventDefault();
        change_captcha();
    });

    function change_captcha(){
        document.getElementById('captcha').src="./static/classes/get_captcha.php?rnd="+Math.random();
    };
});
</script>

如果有人希望看到我在http://pug4u.com/contact.php

上使用的页面

1 个答案:

答案 0 :(得分:0)

尝试在if和else

周围添加花括号
if (respone == "success") { }

它可能是一个分号,为你搞清楚事情。