0

我在这里有一个花式框内联表单

http://keith464.fahrradhamburg.de/Messen/

  • 安梅尔登

第 1 点 - 它“中断”/当我尝试发送表单时出现以下错误

Uncaught TypeError: Object [object Object] has no method 'on' - 这是针对这一行的 $("#send").on("click", function(){

忽略该错误,并将其更改为 $("#messform").submit(function() {

我有一个新问题,当fancybox关闭时,它会重定向页面,我该如何阻止它?

4

2 回答 2

0
$("#messform").submit(function() { 

正在调用表单动作,所以return false;在里面使用。不知道这是否是问题,但试一试:)

于 2012-11-01T12:53:59.440 回答
0

为了清楚起见,您只想更改fancybox 的内容?

如果是这种情况,那么我建议如下:

$("#messform").submit(function() {
                var emailval  = $("#contactEmail").val();
                var msgval    = $("#c_message").val();
                var msglen    = msgval.length;
                var mailvalid = validateEmail(emailval);


                var mailvalid = true;
                var msgval    = $("#c_message").val();
                var msglen    = msgval.length;


                if(mailvalid == true && msglen >= 4) {
                    // if both validate we attempt to send the e-mail
                    // first we hide the submit btn so the user doesnt click twice
                    $("#send").replaceWith("<em>sending...</em>");

                    $.ajax({
                        type: 'POST',
                        url: 'sendmesse.php',
                        data: $("#messform").serialize(),
                        success: function(data) {
                            if(data == "true") {
                                $("#messform").fadeOut("fast", function(){
                                    $(this).before("<strong>Success! Your feedback has been sent, thanks :)</strong>");
                                    // setTimeout($.fancybox.close(), 1000);
                                    // $('.fancybox').close();
                                    // $.fancybox.close();
                                    setTimeout(function(){ $.fancybox.close();}, 1000);

                                });
                            }
                        }
                    });
                }

// 这部分很重要,因为您使用的是 ajax 帖子,因此您希望忽略正常的表单提交。返回假;}); });

于 2012-11-01T12:54:33.717 回答