有关已发送的消息无效

时间:2014-10-23 09:45:02

标签: javascript jquery forms email post

我有代码检查地址是否正常并发送。发送信息后,似乎已发送消息。

当我提供错误的电子邮件地址格式时 - 显示消息。

然后,当我提供正确的地址时 - 您发送的邮件无效。

有什么问题?

jQuery代码:

<script type="text/javascript">

    {literal}
    function validateEmail(email) {
        return /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/.test(email);
    }
    {/literal}


    $(document).ready(function() {
       $('#mybtn').click(function() {
            var sEmail = $('#email').val();
            if ($.trim(sEmail).length == 0) {
                alert('Please input your email');
               //e.preventDefault();
            }
            if (validateEmail(sEmail)) {
                $('#contact').submit(function() {
                    $.ajax({
                        url : '/contact/process',
                        data : $('#contact').serialize(),
                        type: "POST",
                        success : function(){
                            $('form').find('#name, #email, #message').val('');
                            $('#messageAfterSend').addClass('alert alert-success').text("Thank you for send email").slideUp(3200);
                        }
                    });
                    return false;
                }); 
            }
            else {
                $('#messageAfterSend').addClass('alert alert-success').text("Invalid email.").slideUp(3200);
                $('form').find('#email').val('');
            }
        });
    });
</script>

1 个答案:

答案 0 :(得分:1)

<script type="text/javascript">

function validateEmail(email) {
    return /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,4})$/.test(email);
}

$(document).ready(function() {
   $('#contact').on('submit', function(e) {
       e.preventDefault();
       $.ajax({
           url : '/contact/process',
           data : $(this).serialize(),
           type: "POST",
           success : function(){
               $('form').find('#name, #email, #message').val('');
               $('#messageAfterSend').addClass('alert alert-success').text("Thank you for send email").slideUp(3200);
           }
       });
   });
   $('#mybtn').on('click', function(e) {
        e.preventDefault();
        var sEmail = $('#email').val();
        if ($.trim(sEmail).length == 0) {
            alert('Please input your email');
        }
        if (validateEmail(sEmail)) {
             $('#contact').trigger('submit');
        } else {
            $('#messageAfterSend').addClass('alert alert-success').text("Invalid email.").slideUp(3200);
            $('form').find('#email').val('');
        }
    });
});

尝试这种方式,首先在联系表单上设置监听器,然后在&#34;发送按钮&#34; 如果是&#34;简单形式&#34;你可以把所有东西都放进去(&#39;提交&#39;)听众

<强> Fiddle