如何在单击按钮提交时禁用操作表单?

时间:2017-12-14 18:42:30

标签: javascript jquery html forms browser

我的HTML代码如下:

<form id="payment-form" method="POST" action="http://myshop.dev/member/shop/payment/process">
    ...
    <button class="btn btn-danger pull-right" type="submit" >
        Checkout
    </button> 
</form

我的javascript代码如下:

//check if there is exist button forward browser or no
if (window.performance && window.performance.navigation.type == window.performance.navigation.TYPE_BACK_FORWARD) {
    //disable action form
    $('#payment-form').attr('action', '')
    //call forward button on the browser
    history.go(1);
}
else {
    //display checkout detail
    $('#payment-form').attr('action', '/member/shop/payment/checkout')
    return true
}

我在购物车的购物详情上有一个结帐按钮。如果用户点击结帐按钮,则会显示购买的结帐详情

如果用户点击浏览器中的后退按钮,它将返回上一页,即详细购物车。如果在该页面上,用户再次单击结帐按钮,我想:它将在浏览器中调用转发按钮

我的问题是,如果用户再次点击结帐按钮,操作表单仍然有效且仍有刷新页面

我希望当用户点击第二个结帐按钮时,它只是在浏览器中调用转发按钮而没有刷新页面

我该怎么办?

2 个答案:

答案 0 :(得分:0)

我不确定我到底知道你想要做什么或为什么这样做,但首先,在我看来,通过浏览器来控制你的网站/网络应用程序的流量是一个可怕的想法历史。其次,您是否尝试禁用表单提交事件的默认行为?

例如:

$("#payment-form").submit(function(event) {
    // this takes care of disabling the form's submission
    event.preventDefault();

    // the rest of your code...
});

我猜你要为这个功能添加一些条件,这样只有当用户再次点击结账按钮时才会禁用表单的提交(如果我理解正确的话)。 无论如何,让我知道这是否有用,如果不是,请尝试解释一下为什么你要尝试这样做以及究竟是什么问题。 希望它有所帮助。

答案 1 :(得分:0)

setTeamA(data, "name1")
相关问题