0

我有一本书现在提交支付网关的按钮。

该对话框不会在未确认的情况下保持提交表单。

如何停止提交表单。

这是代码:

var submitForm = $('#paypal');
submit = false;

$("#confirm").dialog({
    resizable: false,
    height: 140,
    modal: true,
    autoOpen: false,
    buttons: {
        'Submit': function() {
            $(this).dialog('close');
            submit = true;
            submitForm.submit();
        },
        'Cancel': function() {
            $(this).dialog('close');
        }
    }
});
$("#confirm").parent().appendTo($("#paypal")); 

submitForm.submit(function() {
    if (submit) {
        return true;
    } else {
        $("#confirm").dialog('open');
        return false;
    }
});

HTML 代码隐藏值被移除:

<form id="paypal" name="paypal" method='post' action="https://www.sandbox.paypal.com/cgi-bin/webscr">
<input type="submit" class="book_nowinp" value="book_now" name="btnBook"/>
         </form>
4

1 回答 1

0

不要在表单中使用提交按钮,而是使用普通按钮并在单击该按钮时打开确认对话框。

<input type="button" class="book_nowinp" onclick="$('#confirm').dialog('open')" value="book_now" name="btnBook"/>

onclick您已经有了在对话框的提交按钮事件上触发表单提交的代码,所以现在只需删除表单提交上的处理程序。

于 2013-07-18T13:09:29.713 回答