【问题标题】:How i pass html input data to javascript我如何将 html 输入数据传递给 javascript
【发布时间】:2019-12-23 18:57:45
【问题描述】:

我想将输入数据解析为 razorpay 脚本。我是 php 新手,因为基本上我是移动应用程序开发人员。这是我第一次尝试 php。我也尝试过发布方法。我不知道我在这段代码中哪里出错了。我想将电子邮件传递给 razorpay 脚本字段

 <div class="form-filde">

                    <form action="contact_us.php" method="post" >

                        <div class="row">

                            <div class="col-sm-6">

                                <div class="input-box">

                                    <input type="text" placeholder="Name" data-validation="required" name="name" >

                                </div>

                                <div class="input-box">

                                    <input type="text" placeholder="Email" data-validation="required" name="email" >

                                </div>

                                <div class="input-box">

                                    <input type="text" placeholder="Subject" data-validation="required" name="subject" >

                                </div>

                            </div>

                            <div class="col-sm-6">

                                <div class="input-box">

                                    <textarea placeholder="Message"  name="message"></textarea>

                                </div>

                            </div>

                            <div class="col-sm-12">

                                <div class="submit-box">

                                    <input type="submit" value="SEND" class="btn">
                                                </div>   

                                </div>    
                            </div>  
 <script
        src="https://checkout.razorpay.com/v1/checkout.js"
        data-key="my key"
        data-amount="100000"
        data-buttontext="Enrol Now to Get 10% Spot Registration Discount"
        data-name="ssss.com"
        data-description="Android Training Courses"
        data-image="https://some.com/itrain/images/logo.png"
        data-theme.color="#3276B1"
         data-prefill.email=document.getElementById('email').value
    ></script>


                    </form>

                </div>

有人帮我解决这个问题。

【问题讨论】:

    标签: javascript php html razorpay


    【解决方案1】:

    改变:

    <input type="text" placeholder="Email" data-validation="required" name="email" >
    

    <input type="text" placeholder="Email" data-validation="required" name="email" id="email" >
    

    更新 -
    尝试以下一个 -

    <div class="form-filde">
    
        <form action="contact_us.php" method="post" id="frm_container">
    
            <div class="row">
    
                <div class="col-sm-6">
    
                    <div class="input-box">
    
                        <input type="text" placeholder="Name" data-validation="required" name="name" >
    
                    </div>
    
                    <div class="input-box">
    
                        <input type="text" placeholder="Email" data-validation="required" name="email" id="email">
    
                    </div>
    
                    <div class="input-box">
    
                        <input type="text" placeholder="Subject" data-validation="required" name="subject" >
    
                    </div>
    
                </div>
    
                <div class="col-sm-6">
    
                    <div class="input-box">
    
                        <textarea placeholder="Message"  name="message"></textarea>
    
                    </div>
    
                </div>
    
                <div class="col-sm-12">
    
                    <div class="submit-box">
    
                         <input type="submit" value="SEND" class="btn"> 
                                    </div>   
    
                    </div>    
                </div>  
    
    <script>
        var email_val = document.getElementById('email').value;
        document.querySelector("#email").addEventListener("change",setEmail);
        function setEmail(e){   
            try{
    
                var elem = document.getElementById("razorpay_script");            
                var elem2 = document.querySelector(".razorpay-payment-button");
                document.querySelector("#frm_container").removeChild(elem);  
                document.querySelector("#frm_container").removeChild(elem2);  
            }catch(err){
                console.log(err);
            }
    
            email_val = e.target.value;
            addScript(email_val);
            //
        }
    
        function addScript(email_val) {
            var s = document.createElement( 'script' );
            s.setAttribute( 'src', "https://checkout.razorpay.com/v1/checkout.js" );
            s.setAttribute( 'id', "razorpay_script" );
            s.setAttribute( 'data-key', "my key" );
            s.setAttribute( 'data-amount', "100000" );
            s.setAttribute( 'data-buttontext', "Enrol Now to Get 10% Spot Registration Discount" );
            s.setAttribute( 'data-name', "ssss.com" );
            s.setAttribute( 'data-description', "Android Training Courses" );
            s.setAttribute( 'data-image', "https://some.com/itrain/images/logo.png" );
            s.setAttribute( 'data-theme.color', "#3276B1" );
            s.setAttribute( 'data-prefill.email', email_val );
            document.querySelector("#frm_container").appendChild( s );
        }
    
    </script>
    <!--  <script
            src="https://checkout.razorpay.com/v1/checkout.js"
            data-key="my key"
            data-amount="100000"
            data-buttontext="Enrol Now to Get 10% Spot Registration Discount"
            data-name="ssss.com"
            data-description="Android Training Courses"
            data-image="https://some.com/itrain/images/logo.png"
            data-theme.color="#3276B1"
            data-prefill.email= email_val
        ></script> -->
    
    
                        </form>
    
                    </div>
    

    希望对你有帮助:)

    【讨论】:

    • 它打印 document.getElementById('email').value 。我认为它认为是字符串
    • 是的,你是对的,因为脚本与 html 的其余部分并行加载,因此无法绑定电子邮件值,让我们检查更新后的值,我尝试在用户填写电子邮件后添加脚本场地。希望它有所帮助:)
    猜你喜欢
    • 1970-01-01
    • 2016-03-24
    • 1970-01-01
    • 2016-04-11
    • 1970-01-01
    • 2011-12-04
    • 2014-10-05
    • 1970-01-01
    • 2016-04-12
    相关资源
    最近更新 更多