2016-08-19 4 views
0

私はAPIからストライプと "カスタムフォーム"を使用しています。次のコードは、英語で何か問題がある場合はエラーを投げていますが、エラーメッセージの一部をノルウェー語に翻訳して、顧客にとってより使いやすいものにしたいと考えています。たとえば、現在英語の「invalid_expiry_year」や「invalid_expiry_month」などです。JavaScriptでストライプエラーメッセージをカスタマイズする

達成することは可能でしょうか?

<script type="text/javascript" src="https://js.stripe.com/v2/"></script> 
<script type="text/javascript"> 
    Stripe.setPublishableKey('pk_test_2iA9ERjj5lVuUgvOS9W5fNtV'); 
    $(function() { 
     var $form = $('#payment-form'); 
     $form.submit(function(event) { 
     // Disable the submit button to prevent repeated clicks: 
     $form.find('.submit').prop('disabled', true); 

     // Request a token from Stripe: 
     Stripe.card.createToken($form, stripeResponseHandler); 

     // Prevent the form from being submitted: 
     return false; 
     }); 
    }); 
    function stripeResponseHandler(status, response) { 


    function stripeHandler(status, response){ 
     if (response.error && response.error.type == 'card_error'){ 
     $('.errors').text(errorMessages[ response.error.code ]); 
     } 

     else { 
     // do other stuff (and handle api/request errors) 
     } 
    } 
     // Grab the form: 
     var $form = $('#payment-form'); 

     if (response.error) { // Problem 

     // Show the errors on the form: 
     $form.find('.payment-errors').text(response.error.message); 
     $form.find('.submit').prop('disabled', false); // Re-enable submission 

     } else { // Token was created! 

     // Get the token ID: 
     var token = response.id; 

     // Insert the token ID into the form so it gets submitted to the server: 
     $form.append($('<input type="hidden" name="stripeToken">').val(token)); 

     // Submit the form: 
     $form.get(0).submit(); 
     } 
    }; 
</script> 

答えて

0

はなく、唯一のいくつかの他のlanguages Stripe supportsについて、あなたは英語とは異なる言語でストライプ状を設定するためのオプションがあります。カスタム統合の場合は、StripeCheckout.configure()を呼び出すときにlocale: 'auto'を渡す必要がありますので、言語は自動的に検出されます。 docsにはさらに詳しい情報があります。

しかし、ノルウェー語はまだサポートされていないので、私が提案しているのは、レスポンスコードをマッピングし、エラーのために独自の翻訳を提供することです。

var errorMessages = { 
    incorrect_number: "The card number is incorrect.", 
    .... 
}; 

あなたはすべてのエラーコードとの完全なリストを見つけることができますhere

関連する問題