Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/456.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带Ruby-on-Rails的stripejavascript_Javascript_Ruby On Rails_Stripe Payments - Fatal编程技术网

带Ruby-on-Rails的stripejavascript

带Ruby-on-Rails的stripejavascript,javascript,ruby-on-rails,stripe-payments,Javascript,Ruby On Rails,Stripe Payments,我相信这很简单,但我无法理解。我是stripe的新手,我第一次在我的网站上配置它。我使用Stripe库中的以下javascript代码来收费 <script src="https://checkout.stripe.com/v2/checkout.js" class="stripe-button" data-key="<%= Rails.configuration.stripe[:publishable_key] %>"

我相信这很简单,但我无法理解。我是stripe的新手,我第一次在我的网站上配置它。我使用Stripe库中的以下javascript代码来收费

<script src="https://checkout.stripe.com/v2/checkout.js" class="stripe-button"
                data-key="<%= Rails.configuration.stripe[:publishable_key] %>"
                data-description="Qsnag One Time Fee"
                data-amount="<%=@amount*100%>"
                data-email="<%=current_user.email%>">
</script>

正如您所料,我在chargescreate中的@amount为0。我希望避免创建自定义表单并使用javascript API。是否有办法从我的费用控制器中的javascript API访问金额。

我将金额添加为隐藏字段,并将脚本放入表单标记中

以下是最新的答案:

        <form action="/charge" method="post">
          <script src="https://checkout.stripe.com/v2/checkout.js" class="stripe-button"
                  data-key="<%= Rails.configuration.stripe[:publishable_key] %>"
                  data-description="Qsnag One Time Fee"
                  data-amount="<%=@amount*100%>"
                  data-email="<%=current_user.email%>">
          </script>
          <input type="hidden" name="amount" value="<%=@amount*100%>"/>
          <input type="hidden" name="plan" value="<%=@plan%>"/>
        </form>

您不能根据用户选择的计划在费用控制器中加载金额吗?另外,把它和表单一起作为一个隐藏字段发送。是的,我实际上试着用一个表单发送它,结果成功了。不过,谢谢你的建议。你可能应该在用户会话中保存金额。这样他们就无法编辑金额。谢谢@brian的提示。
        <form action="/charge" method="post">
          <script src="https://checkout.stripe.com/v2/checkout.js" class="stripe-button"
                  data-key="<%= Rails.configuration.stripe[:publishable_key] %>"
                  data-description="Qsnag One Time Fee"
                  data-amount="<%=@amount*100%>"
                  data-email="<%=current_user.email%>">
          </script>
          <input type="hidden" name="amount" value="<%=@amount*100%>"/>
          <input type="hidden" name="plan" value="<%=@plan%>"/>
        </form>