javascript在加载后操纵DOM

时间:2014-03-04 22:13:22

标签: javascript

我正在使用Stripe进行信用卡处理。 Stripe代码是一个在HTML代码中内嵌的表单/脚本(见下文)。我首先在我页面的head部分的脚本中将Stripe变量初始化为null。我正在尝试在页面加载后更改这些变量,但我似乎无法做到这一点。在pageinit上,我运行一个设置参数的脚本。显然,变量是在页面加载上设置的,我可以使用一些帮助来确定如何更新发送到Stripe的值。

    <form id="formPayNow"  onsubmit="return stripePayNow()">
  <button id="customButton">Pay</button>      
      <script>
        var handler = StripeCheckout.configure({
          key: 'pk_test_Dz',
          image: "https://stripe.com/img/documentation/checkout/marketplace.png"  ,
          token: function(token, args) {
            // Use the token to create the charge with a server-side script.
                   cardToken = token.id;                        
                  stripePayNow();        
          }
        });
        document.getElementById('customButton').addEventListener('click', function(e) {
          // Open Checkout with further options
          handler.open({
            name: 'STRIPE Secure Checkout',
            description: itemDesc,
            amount: itemGross,
            email: userEmail
          });
          e.preventDefault();               
        });
      </script>
</form>
编辑:这是我试过的...... 1.如果我将Stripe变量的初始化移动到页面加载后($(document).on('pageinit','#showMyInfo',function(){ 然后Firebug显示“变量未定义”。 2.如果我在页面的head部分将其设置为“null”,然后稍后尝试在pageinit上操作它,那么我就不能。当我稍后调用Stripe表单时,它保持为“null”。              - 成为这样一个新手的applogies!

而且,如果我试着举例.....

     document.getElementById("itemDesc").innerHTML = "zzzzzzz"; 

我得到一个TypeError为null。

1 个答案:

答案 0 :(得分:0)

尝试处理您的vars内联此代码:

$(document).ready(function(){
    //your vars changes
});

这是在加载DOM之后操作DOM的最佳方法。