为什么 jQuery 不提交此表单? (或者我做错了什么?:-p)

2024-01-28

HTML:

<form action="https://live.sagepay.com/gateway/service/vspform-register.vsp" method="POST" id="sagepay_form"> 
    <input type="hidden" name="navigate" value="" />
    <input type="hidden" name="VPSProtocol" value="2.23">
    <input type="hidden" name="TxType" value="PAYMENT">
    <input type="hidden" name="Vendor" value="******************">
    <input type="hidden" id= "Crypt" name="Crypt" value="">
    <input id="payment_proceed" value="Proceed To Payment" class="mws-button green" type="button">
</form>

JS:

$("#payment_proceed").click(function() {
        $.post('/includes/cart/ajax/sagepay.php', { //This script just echos the base64 "Crypt" string required by sagepay.
                "cart_id": <?php echo $cart_id; ?>,
                "title": $("#title").val(),
                "first_name": $("#first_name").val(),
                "last_name": $("#last_name").val(),
                "telephone": $("#telephone").val(),
                "email": $("#email").val(),
                "line1": $("#line1").val(),
                "line2": $("#line2").val(),
                "line3": $("#line3").val(),
                "town": $("#town").val(),
                "county": $("#county").val(),
                "postcode": $("#postcode").val()
            },
            function(crypt){              
                $("#Crypt").val(crypt); //The base64 "Crypt" string is inserted in to the hidden form field here.
                alert($("#Crypt").val()); //I just put this here to make sure it had received the "Crypt" string.
                $("#sagepay_form").submit(); //This doesn't work...
            });
    });

我不知道为什么 $("#sagepay_form").submit();不提交表格。我唯一的猜测是因为“action”url 是远程服务器。如果是这种情况,有谁知道我该如何实现我想要实现的目标?

谢谢,任何帮助将不胜感激。


Use $("#sagepay_form").submit(function()...代替$("#payment_proceed").click(function().

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么 jQuery 不提交此表单? (或者我做错了什么?:-p) 的相关文章