我有一个试图在用户单击“提交”按钮时关闭的表单,但它始终显示“正在发送”

这是整个表格

<div class="pos-bottom">

    <a class="modalbox" href="#inline"><img src="images/quote.gif" class="imgquote" width="297" height="72" border="0px" />
    </a>
    <br />
    <div id="inline" style="display: none">
        <h2>Request a Quote</h2>

        <form id="contact" name="contact" action="#" method="post" style="width:600px">
            <br />
            <table width="50%">
                <tr>
                    <td width="30%">*Your Name:</td>
                    <td width="20%">&nbsp;</td>
                    <td width="50%">
                        <input type="text" id="Form_Name" name="Form_Name" />
                    </td>
                </tr>
                <tr>
                    <td width="30%">Company Name:</td>
                    <td width="20%">&nbsp;</td>
                    <td width="50%">
                        <input type="text" id="Form_Company" name="Form_Company" />
                    </td>
                </tr>

                <tr>
                    <td>*Your E-Mail:</td>
                    <td>&nbsp;</td>
                    <td>
                        <input type="text" id="Form_Email" name="Form_Email" />
                    </td>
                </tr>
                <tr>
                    <td width="30%">*Phone Number:</td>
                    <td width="20%">&nbsp;</td>
                    <td width="50%">
                        <input type="text" id="Form_Number" name="Form_Number" />
                    </td>
                </tr>
                <tr>
                    <td width="30%" h>Comments:</td>
                    <td width="20%">&nbsp;</td>
                    <td width="50%">
                        <textarea id="Form_Comments" name="Form_Comments" cols="25" rows="3"></textarea>
                    </td>
                </tr>
                <tr>
                    <td colspan="3">&nbsp;</td>
                </tr>
                <tr>
                    <td width="100%" align="center" colspan="3">
                        <button id="send">Request Quote</button>
                    </td>
                </tr>
                <tr>
                    <td colspan="3">&nbsp;</td>
                </tr>
                <tr>
                    <td width="100%">
                        <b><?php echo $itemname; ?></b>
                        <br />
                        <br /> Manufacturer:
                        <?php echo $manufactuer;?>
                        <br /> Model:
                        <?php echo $model;?>
                        <br /> Category:
                        <?php echo $category;?>
                        <br />
                    </td>
                </tr>
            </table>
        </form>
    </div>

    <!-- basic fancybox setup -->
    <script type="text/javascript">
        $(document)
            .ready(function () {
                $(".modalbox").fancybox();
                $("#contact").submit(function () {
                        return false;
                    });
                $("#send").on("click", function () {
                        {
                            // 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: "AJAX_Quote.php",
                                data: {
                                    name: $("#Form_Name").val(),
                                    email: $("#Form_Email").val(),
                                    eid: $("#Form_ID").val(),
                                    company: $("#Form_Company").val(),
                                    number: $("#Form_Number").val(),
                                    comments: $("#Form_Comments").val()
                                },
                                dataType: 'json',
                                success: function () {
                                    {
                                        $("#contact")
                                            .fadeOut("fast", function () {
                                                $(this).before("<p><strong>Success! Your feedback has been sent, thanks :)</strong></p>");
                                                setTimeout("$.fancybox.close()", 50);
                                            });
                                    }
                                }
                            });
                        }
                    });
            });
    </script>
    <br />
    <br />
</div>
<!--ends pos-bottom-->

我到处都看过,似乎无法正常工作。 任何帮助将不胜感激。

*****编辑****

这是我添加尼克建议的新代码。

 <script type="text/javascript">
    $(document)
        .ready(function () {
            $(".modalbox").fancybox();
            $("#contact").submit(function () {
                    return false;
                });
            $("#send").on("click", function () {

                    {
                        // 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: "AJAX_Quote.php",
                            data: JSON.stringify({name: $("#Form_Name").val(),email: $("#Form_Email").val(),eid: $("#Form_ID").val(),company: $("#Form_Company").val(),number: $("#Form_Number").val(),comments: $("#Form_Comments").val()}),
                            dataType: 'json',
                            success: function () {
                                {

                                    $("#contact")
                                        .fadeOut("fast", function () {
                                            $(this).before("<p><strong>Success! Your feedback has been sent, thanks :)</strong></p>");
                                            setTimeout(function () { $.fancybox.close(); }, 50)
                                        });
                                }
                            }
                        });
                    }
                });
        });
</script>

#1楼 票数:0

服务器将期待一个json字符串,而不是json对象。 请更新

data: {name: $("#Form_Name").val(),email: $("#Form_Email").val(),eid: $("#Form_ID").val(),company: $("#Form_Company").val(),number: $("#Form_Number").val(),comments: $("#Form_Comments").val()},

data: JSON.stringify({name: $("#Form_Name").val(),email: $("#Form_Email").val(),eid: $("#Form_ID").val(),company: $("#Form_Company").val(),number: $("#Form_Number").val(),comments: $("#Form_Comments").val()}),

#2楼 票数:0

根据所使用的版本,看起来有多种方法。 不确定您的版本。

有人建议使用:$ .fancybox.close(true)

检查这些链接中的评论:

链接1链接2

#3楼 票数:0

我可以通过更改它来使其工作

success: function () {
                            {

                                $("#contact")
                                    .fadeOut("fast", function () {
                                        $(this).before("<p><strong>Success! Your feedback has     been sent, thanks :)</strong></p>");
                                        setTimeout(function () { $.fancybox.close(); }, 50)
                                    });
                            }

对此

success: setTimeout(function () { parent.$.fancybox.close(); }, 2000) 

  ask by WebbieWorks translate from so

未解决问题?本站智能推荐:

1回复

BootstrapTypeahead点击发送表单

我正在使用typeahead.js自动完成插件来获取搜索框上的建议。 它工作正常,但我想在用户选择选项和点击时执行搜索。 怎么可能? js功能
2回复

jQuery单击发送不起作用

大家好,我对jquery点击发送功能有一个疑问。 我已经从jsfiddle创建了这个演示 。 因此,如果您访问演示,则可以看到一个笑脸和文本区域。 当您写一些文本并按Enter时,消息发送成功。 但我想还可以添加当您单击笑脸那么它需要发送(w1)从图像sticker="(w1)"像点击发
3回复

单击发送按钮时如何将“给定文本”附加到文本区域。?

我想用用户消息添加我的应用程序链接,当用户点击发送消息时,我希望我的链接必须与用户消息一起添加,并且应该发生发送操作。 示例:如果用户输入“Hi Jhon”并按“发送”按钮,则发送的消息应为“HI Jhon www.yahoo.co.in” 这是代码: 但是在我连接到这个块之前,send 动作已经被
1回复

当用户单击发送按钮时,从twitter引导程序模态传递值

我有一个基于数据库中的用户动态发送的发送邮件图标。 当用户单击邮件图标时,我正在调用一个函数来打开带有名称(文本框)和描述(文本区域)的引导模式对话框。 在我的引导模式中,有两个按钮,一个是“取消”,另一个是“ sendmail”按钮。当用户单击sendmail按钮时,在这里我很困惑如何将用
1回复

从模态单击发送按钮时从视图文本框获取值

这是我的视图/模态是带有 Send(btnSend) 按钮的视图,我没有运气从我的 mainView 中获取隐藏文本框和文本框的值。 这是我的模态留言 × 这是我的 btSend Click 功能 - 我下面的 dets 是空的。 我也尝试了 getElementById 并且也没有工作 -我的函
2回复

点击发送电子邮件[关闭]

我是摄影师,并使用我的网站与客户共享照片。 我总是将它们链接到受密码保护的目录,在该目录中,他们可以浏览和下载文件。 他们下载照片后,我想收到一封确认电子邮件。 因此,当他们单击特定元素时,我想向自己发送电子邮件。 我该如何编码?
4回复

点击发送数据

我正在使用Ajax(以及Django)在按钮单击时执行一些操作。 在查看视图之前,我无法将数据传递给javascript函数。 怎么了? 如何将按钮的ID数据传递给功能? 我收到消息,我的request_data是未定义的。 template.html javascript.js
1回复

单击关闭时,引导模态未关闭

我有一本书的网格,其布局类似于Instagram页面。 该网格中的每个单元都链接到一个模式,该模式将打开来自服务器的信息。 该模式打开按预期方式,但是未按预期关闭。 也就是说,仅当用户在模态内单击时模态才会关闭,但是,当用户单击内部按钮(即“ .close”)时,模态不会关闭。 当我