2016-05-25 7 views
0

私はスクエアクレジットカード処理を使用していますが、同じWebページで2つの支払いフォームを使用する必要があります。 私はSqPaymentFormを私のWebページに統合しようとしました。私は支払いの支払いに成功しました。それが到着するときにフォームが2回ロードされる可能性があり、フォームに2回すべてのカードの詳細を入力する必要があります。どのように私はこの問題に終わることができますか?複数のSqPaymentFormsを1つのウェブページで

var paymentFormUserPickUp = new SqPaymentForm({ 
         applicationId: ApplicationId, 
         inputClass: 'sq-input', 
         cardNumber: { 
          elementId: 'sq-card-numberup', 
          placeholder: 'Card Number' 
         }, 
         cvv: { 
          elementId: 'sq-cvvup', 
          placeholder: 'CVV' 
         }, 
         expirationDate: { 
          elementId: 'sq-expiration-dateup', 
          placeholder: 'MM/YY' 
         }, 
         postalCode: { 
          elementId: 'sq-postal-codeup', 
          placeholder: 'Zip Code' 
         }, 
         callbacks: { 
          cardNonceResponseReceived: function (errors, nonce, cardData) { 
           if (errors) { 
            // handle errors 
            var Errors; 
            errors.forEach(function (error) { 
             Errors += error.message + ","; 
            }); 
            Errors.trimEnd(','); 
            alert(Errors); 
           } else { 
            alert(nonce); 
            localStorage.setItem("Nonce", nonce); 
           } 
          }, 
          unsupportedBrowserDetected: function() { 
           // Alert the buyer that their browser is not supported 
          } 
         } 
        }); 


var paymentFormUserDelivery = new SqPaymentForm({ 
         applicationId: ApplicationId, 
         inputClass: 'sq-input', 
         cardNumber: { 
          elementId: 'sq-card-numberud', 
          placeholder: 'Card Number' 
         }, 
         cvv: { 
          elementId: 'sq-cvvud', 
          placeholder: 'CVV' 
         }, 
         expirationDate: { 
          elementId: 'sq-expiration-dateud', 
          placeholder: 'MM/YY' 
         }, 
         postalCode: { 
          elementId: 'sq-postal-codeud', 
          placeholder: 'Zip Code' 
         }, 
         callbacks: { 
          cardNonceResponseReceived: function (errors, nonce, cardData) { 
           if (errors) { 
            // handle errors 
            var Errors; 
            errors.forEach(function (error) { 
             Errors += error.message + ","; 
            }); 
            Errors.trimEnd(','); 
            alert(Errors); 
           } else { 
            alert(nonce); 
            localStorage.setItem("Nonce", nonce); 
           } 
          }, 
          unsupportedBrowserDetected: function() { 
           // Alert the buyer that their browser is not supported 
          } 
         } 
        }); 

ありがとう!!!

答えて

0

1つのカード入力に複数のフォームがサポートされていません。受注は送金と送金の両方の支払いを受けるのはなぜですか?サンプルページがありますか?

+0

サンプルページはありません。注文は払い戻しと納品の両方を受けず、1つだけが許可されますが、ページには払い戻し支払いフォームと配送支払いフォームの両方が含まれます。カートへのアイテムの追加が完了したら、ユーザーはピックアップまたは配送のいずれかのオプションを選択します。それによると、我々はパネルを表示します。 – 07S21

+0

現在のimplは複数のフォームをサポートしていませんが、フォームオブジェクトの初期化を延期できますので、一度に1つだけアクティブにできますか?以下の擬似コードである: 'VARのpickupForm、deliveryForm onPickupPanelShow:initPickupForm() onDeliveryFormShow:initDeliveryForm() initPickupForm(){ IF(deliveryForm){ deliveryForm.destroy() deliveryForm = NULL } pickupForm = new SqPaymentForm(...) initDeliveryForm(){ if(pickupForm){ pickupForm.destroy(); pickupForm = null } deliveryForm =新しいSqPaymentForm(...) } ' –

関連する問題