0

我使用 jQuery 验证插件...并尝试使用 ajax 发布数据。

我发现的问题是,一旦 ajax 运行,它会在表单标签中提交默认的“动作”。

我拥有的jQuery代码如下,我希望有人能帮助我。

    <script type="text/javascript">
        jQuery(document).ready(function() {

            var platinumForm = jQuery('#platinum-form');

            platinumForm.validate({
                rules: {
                    fullname: "required",
                    email: {
                        required: true,
                        email: true
                    }
                },
                messages: {
                    fullname: "Please enter your Fullname",
                    email: "Please enter a valid Email Address"
                },
                errorPlacement: function(error, element) {
                    error.appendTo( element.prev() );
                },
                submitHandler: function() {
                    jQuery('#platinum-form').fadeOut();

                    var iName = platinumForm.find('#fullname');

                    var data = 'fullname=' + iName.val();

                    $.ajax({
                        url: "/my-processing-page.php",
                        type: "POST",
                        data: data,
                        dataType: "html",
                        cache: false,
                        success: function(html){
                            console.log(html);
                            if (html.indexOf('Sorry') > -1) {
                                $('#paymentMessage').html(html).fadeIn('slow');
                            } else {
                                $('#form-payment-content').slideUp('slow', function(){
                                    $('#thankyouMessage .message').html(html).parent().fadeIn('slow');

                                });
                            }
                        }

                    });                     

                },
            })              
        });
    </script>

谢谢

4

1 回答 1

2

return false;在之后$.ajax

               .......
               $.ajax({
                    url: "/my-processing-page.php",
                    type: "POST",
                    data: data,
                    dataType: "html",
                    cache: false,
                    success: function(html){
                        console.log(html);
                        if (html.indexOf('Sorry') > -1) {
                            $('#paymentMessage').html(html).fadeIn('slow');
                        } else {
                            $('#form-payment-content').slideUp('slow', function(){
                                $('#thankyouMessage .message').html(html).parent().fadeIn('slow');

                            });
                        }
                    }

                });   
                return false;
                ......  
于 2013-09-09T15:54:24.340 回答