使用 JavaScript 提交表单时如何从用户那里获取数量变量?

How can I get quantity variable from user when subnmitting a form using JavaScript?

这是一个 PayPal 订阅计划,与他们的 HTML 形式的旧订阅计划不同,这些仅 JavaScript。

计划根据订购数量设置了不同的定价,但 PayPal 没有给你任何让用户提交数量的方法,只是默认数量为 1。我可以手动设置数量脚本(如下所示,数量为 4)效果很好,但如果我需要为每个数量使用不同的按钮,那么使用这种按钮毫无意义。

这是删除了标识符的 PayPal 代码;

<div id="paypal-button-container"></div>
<script src="https://www.paypal.com/sdk/js?client-id=ABCD-ABC_1234ABCD&vault=true&intent=subscription" data-sdk-integration-source="button-factory"></script>
<script>
  paypal.Buttons({
      style: {
          shape: 'rect',
          color: 'gold',
          layout: 'vertical',
          label: 'subscribe'
      },
      createSubscription: function(data, actions) {
        return actions.subscription.create({
          'plan_id': 'P-123456789'
          'quantity': '4'
        });
      },
      onApprove: function(data, actions) {
        alert(data.subscriptionID);
      }
  }).render('#paypal-button-container');
</script>

所以我需要的是一种让用户在点击订阅按钮之前动态更新实际数量的方法。我认为这可以通过 JS 实现,但我不知道如何实现。同样的问题已在 PayPal 社区网站上被问过两次,但尚未发布任何答案。

创建一个 HTML 输入或 select 下拉列表,允许 select 输入数量。简单例子:

<span>Qty: </span><input id="myQuantity" type="text" />

.....

      createSubscription: function(data, actions) {
        return actions.subscription.create({
          'plan_id': 'P-123456789'
          'quantity': document.getElementById('myQuantity').value
        });
      },