Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/388.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
Javascript 如何禁用和更改foreach循环中单个条带按钮的文本_Javascript_Jquery_Laravel_Stripe Payments - Fatal编程技术网

Javascript 如何禁用和更改foreach循环中单个条带按钮的文本

Javascript 如何禁用和更改foreach循环中单个条带按钮的文本,javascript,jquery,laravel,stripe-payments,Javascript,Jquery,Laravel,Stripe Payments,我正在使用stripe basic checkout按钮,该按钮在我的产品中循环,是否有方法在按钮提交后禁用和更改按钮文本,而不影响其他产品上的按钮。我有困难,试图禁用一个按钮后,付款提交,不会影响其他产品的按钮 所以我想做的是,在我提交信息并完成整个过程后,单击“用卡支付”。我刚买的产品我想禁用按钮,所以我只能买一次 @foreach($userproduct as $product) <div class="col-md-6 col-lg-4"> <fo

我正在使用stripe basic checkout按钮,该按钮在我的产品中循环,是否有方法在按钮提交后禁用和更改按钮文本,而不影响其他产品上的按钮。我有困难,试图禁用一个按钮后,付款提交,不会影响其他产品的按钮

所以我想做的是,在我提交信息并完成整个过程后,单击“用卡支付”。我刚买的产品我想禁用按钮,所以我只能买一次

@foreach($userproduct as $product)
    <div class="col-md-6 col-lg-4">
      <form id="btnst" action="{{ '/account/'.Auth::user()->slug .'/'. $product->id  }}" method="POST">
          {{ csrf_field() }}
          <script
            src="https://checkout.stripe.com/checkout.js" class="stripe-button"
            data-key="pk_test_fLAtreA6Mox2p8QVJLTfSBAH"
            dat a-amount=".99"
            data-name="ex"
            data-description=" expired"
            data-email="{{ auth::check() ? auth()->user()->email : null }}"
            data-image="https://stripe.com/img/documentation/checkout/marketplace.png"
            data-panel-label=" Run Ad {{ $product->title }} Coupon"
            data-locale="auto">
          </script>

          <script type="text/javascript">
              $(document).ready(function(){
                  $(".stripe-button-el span").remove();
                      $("button.stripe-button-el").removeAttr('style').css({
                          "display":"inline-block",
                          "width":"50%",
                          "padding":"5px",
                          "background":"#d95a5c",
                          "color":"white",
                          "font-size":"1.3em",
                          "margin-left":"30%"}).html("Advertise");
                  });
          </script>
          <input type="hidden" name="adname" value="payment">
          <input type="hidden" name="adprice" value="0.99">
          <input type="hidden" name="prod_id" value="{{$product->id }}">
      </form>
@endif

这完全可以通过添加disabled属性在前端完成

$(".your-button").on("click", function(){
 $(this).setAttr("disabled", "disabled");
});
现在,这当然有一个缺点,这将无法确保产品购买是否完成

另一种方法是使用ajax简单地轮询服务器以了解此付款的状态,并在收到真正的通知后禁用它


您可以混合使用这两种方法。

单击后是否要禁用“用卡支付”按钮?提交表单后,将很快加载一个新页面,你能详细解释一下这个问题吗?@Bhumisaha是的,我想在提交付款后禁用“用卡支付”按钮,这样用户就不能购买该产品了again@Teemu于是,我把我的信息放进了pay with card弹出窗口,然后我想在我提交付款后禁用该特定产品的按钮。因此,pay with card页面上的其他产品在那里,但不是我购买的产品请重新阅读我的评论。