如果输入字段不是 40 个字符,则隐藏 PayPal 付款表单的提交按钮

Hide submit button for PayPal payment form if input field is not 40 characters

我的网站上有一个 PayPal 立即购买按钮表单,用户可以填写该表单来购买产品。

<form action="https://www.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="BHQLX7V2W2GJQ">
<table>
<tr><td><input type="hidden" name="on0" value="Select package">Select package</td></tr><tr><td><select name="os0">
    <option value="Premium">Premium .49 USD</option>
    <option value="Platinum">Platinum .49 USD</option>
    <option value="Diamond">Diamond .49 USD</option>
</select> </td></tr>
<tr><td><input type="hidden" name="on1" value="Enter your 40 character UDiD">Enter your 40 character UDiD</td></tr><tr><td><input type="text" name="os1" id="field" maxlength="40" placeholder="Paste UDiD here"></td></tr>
</table>
<input type="hidden" name="currency_code" value="USD">
<input type="image" src="https://www.paypalobjects.com/en_AU/i/btn/btn_buynow_LG.gif" border="0" name="submit" id="paypalButton" alt="PayPal — The safer, easier way to pay online.">
<img alt="" border="0" src="https://www.paypalobjects.com/en_AU/i/scr/pixel.gif" width="1" height="1">
</form>

在此表单中,有一个文本输入字段:

<input type="text" name="os1" id="field" maxlength="40">

我想强制用户输入恰好 40 个字符的 UDiD(对于他们的 iOS 设备),然后他们才能通过 'Buy now' 按钮(表单的提交按钮)。如果输入字段没有输入 40 个字符的字符串,我如何通过 disabling/hiding 按钮执行此操作?

编辑:新表单代码

我继续修复了你的所有代码。

将您的表单更改为...

  <form action="https://www.paypal.com/cgi-bin/webscr" method="post" id="paypalForm" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="BHQLX7V2W2GJQ">
<table>
<tr><td><input type="hidden" name="on0" value="Select package">Select package</td></tr><tr><td><select name="os0">
    <option value="Premium">Premium .49 USD</option>
    <option value="Platinum">Platinum .49 USD</option>
    <option value="Diamond">Diamond .49 USD</option>
</select> </td></tr>
<tr><td><input type="hidden" name="on1" value="Enter your 40 character UDiD">Enter your 40 character UDiD</td></tr><tr><td><input type="text" name="os1" id="field" maxlength="40" placeholder="Paste UDiD here"></td></tr>
</table>
<input type="hidden" name="currency_code" value="USD">
<input type="image" style="display:none;" src="https://www.paypalobjects.com/en_AU/i/btn/btn_buynow_LG.gif" name="submit" id="paypalButton" alt="PayPal — The safer, easier way to pay online.">
<img alt="" src="https://www.paypalobjects.com/en_AU/i/scr/pixel.gif" width="1" height="1">
</form>

并在您 </body> 标签上方添加这个

<script>
  $(window).keydown(function(event){
    if(event.keyCode == 13) {
        event.preventDefault();
        if($('#field').val().length == 40){
            $( "#paypalForm" ).submit();
        }
    }
  });
$(document).ready(function() {
    $("#field").keyup(function() {
        if ($('#field').val().length == 40) {
            $('#paypalButton').fadeIn();
        } else {
            $('#paypalButton').fadeOut();

        }
    });
});

    </script>