将PayPal按钮金额输入值更改为用户的选择

时间:2014-07-30 13:26:12

标签: javascript php jquery html paypal

我已经看到了一个这样做的例子但是我得到了#34;未定义"每次我尝试访问这些值。我希望用户能够输入金额,然后在输入值中设置该金额。 HTML看起来像这样:

echo '<div class="article">
    <input size="1" class="quantity" value="1"/>
    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
    <input type="hidden" name="cmd" value="_xclick">
    <input type="hidden" name="business" value="myemail...">
    <input type="hidden" name="item_name" value="'.$item.'">
    <input type="hidden" name="quantity" value="1">
    <input type="hidden" name="amount" value="'.$price.'">
    //so on...
    </form>
</div>';

页面上有几个项目,每个项目都在div课程中。使用jQuery,我试图这样做:

$(document).ready(function () {
    $(".quantity").change(function() {
        alert($(this).siblings('form input[name="item_name"]').val());
        //$(this).siblings('form input[name="quantity"]').val($(this).val());
    });
});

我一直在&#34;未定义&#34; ...当我在文章div中测试另一个输入字段时,我可以获得val()并进行更改。我在这里做错了什么?

解决方案:

This Post帮助我......不得不摆脱JS,取消隐藏输入并让用户填写表单。

2 个答案:

答案 0 :(得分:0)

I have crafted a fiddle for you below just click this link.

<div class="article">
    <input size="1" class="quantity" value="1" />
    <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
        <input type="hidden" name="cmd" value="_xclick" />
        <input type="hidden" name="business" value="myemail..." />
        <input type="hidden" name="item_name" value="'.$item.'" />
        <input type="hidden" name="quantity" value="1" />
        <input type="hidden" name="amount" value="'.$price.'" />
    </form>
</div>

$(document).ready(function () {
    $(".quantity").change(function() {
        console.log($(this).next().find("input[name='item_name']").val());
        //$(this).siblings('form input[name="quantity"]').val($(this).val());
    });
});

答案 1 :(得分:0)

为什么不简单而聪明而没有js?只需从数量输入字段中删除hidden类型,然后将其更改为text

echo '<div class="article">
        <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
            <input type="hidden" name="cmd" value="_xclick">
            <input type="hidden" name="business" value="myemail...">
            <input type="hidden" name="item_name" value="'.$item.'">
            <input name="quantity" class="quantity" value="1">
            <input type="hidden" name="amount" value="'.$price.'">

            //so on...
        </form>
     </div>';