【问题标题】:jQuery AJAX POST not firingjQuery AJAX POST 未触发
【发布时间】:2016-01-27 01:44:23
【问题描述】:

这是我的表格。这是一个条纹形式:

<form  id = "the_form" method = "post">
    <input type = "hidden" name = "plan" value = "silver"/>

    <script src="https://checkout.stripe.com/checkout.js" class="stripe-button"
        data-key="<?php echo $stripe['publishable_key']; ?>"
        data-description=""
        data-amount="19900"
        data-locale="auto"></script>

    <input type = "hidden" name = "email" value = "<?php echo $_SESSION['b_email']; ?>"/>

    <input type = "hidden" name = "id" value = "<?php echo $_SESSION['brand_id']; ?>"/>
</form>

我想将此表单数据发布到名为 handle_stripe_push.php 的文件中。这是我的 jQuery AJAX POST 调用:

$(document).ready(function(e) {  

        $("#the_form").submit(function(evnt){

            console.log("Form submit event fired")

            $.post('handle_stripe_push.php', $(this).serialize(), function(data){
                alert(data);

            }).fail(function(err, status){

                console.log(err + " " + status)
            })
            evnt.preventDefault()
        }); 

});

问题。当我单击表单上的提交时,此功能甚至没有触发。我知道这一点是因为“表单提交事件已触发”没有输出到我的控制台。

我在谷歌浏览器上。我做了一个检查元素,检查了控制台 - 没有显示 no 错误。

这让我有点发疯,非常感谢您的帮助

【问题讨论】:

  • 你有 jquery cdn 吗?
  • 不,我使用的是本地安装的 jquery
  • 不,正如我在问题中所说,根本没有显示错误:/
  • 条带脚本也绑定了提交事件,我怀疑它会阻止你的脚本运行。
  • 您可能需要对键盘进行一些维护。您的分号; 键似乎只触发了大约一半的时间。

标签: javascript php jquery ajax forms


【解决方案1】:

您是否在页面中包含了本地安装的 JavaScript 库?就像您包含了条带库一样。尝试在 jquery 之前包含条带库。

例如

<script src="https://checkout.stripe.com/checkout.js"></script>
<script src="jquery-latest.min.js"></script>

【讨论】:

  • 是的。正如我在问题中所说,我的控制台中没有显示错误。 '$' 存在于我的程序中
  • 在 jquery 之前包含条带库
猜你喜欢
  • 2018-09-07
  • 2011-10-01
  • 1970-01-01
  • 2011-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-20
  • 1970-01-01
相关资源
最近更新 更多