如何用JavaScript替换输入值中的对象值

时间:2020-10-15 15:34:25

标签: javascript jquery

当我在输入字段中输入值时,它必须将所有值设置为我的对象,但不会这样做。
那么如何使用这样的输入字段设置对象的值,请使其可行...
就像当我单击“付款”按钮时一样,它设置了对象的所有输入值。

<input type="text" id="name"></input>
<input type="email" id="email"></input>
<input type="number" id="phone"></input>
<input type="text" id="billing"></input>
<input type="number" id="amount"></input>
<button id="rzp-button1">Pay</button>
<script src="https://checkout.razorpay.com/v1/checkout.js"></script>
<script>
var nameUser = document.getElementById("name").value;
var emailUser = document.getElementById("email").value;
var phoneUser = document.getElementById("phone").value;
var billingAddress = document.getElementById("billing").value;
var amount = document.getElementById("amount").value;
    
var options = {
    "key": "rzp_test_StY5fFXoMJvNaJ", // Enter the Key ID generated from the Dashboard
    "amount": amount*100, // Amount is in currency subunits. Default currency is INR. Hence, 50000 refers to 50000 paise
    "currency": "INR",
    "name": "Trendy Cart",
    "description": "Test Transaction",
    "image": "https://example.com/your_logo",
   // "order_id": "order_9A33XWu170gUtm", //This is a sample Order ID. Pass the `id` obtained in the response of Step 1
    "handler": function (response){
        alert(response.razorpay_payment_id);
        alert(response.razorpay_order_id);
        alert(response.razorpay_signature)
    },
    "prefill": {
        "name": nameUser,
        "email": emailUser,
        "contact": phoneUser
    },
    "notes": {
        "address": billingAddress
    },
    "theme": {
        "color": "#F37254"
    }
};
var rzp1 = new Razorpay(options);
document.getElementById('rzp-button1').onclick = function(e){
    rzp1.open();
    e.preventDefault();
}
</script>

1 个答案:

答案 0 :(得分:0)

options函数内移动rzp1onclick的定义。这样,仅当单击按钮时才读取值,并且Razorpay构造函数可以在填入值时传递,而不必在页面加载后立即传递。