如果先前e.preventDefault()在它的按钮上,如何重置表单功能?

问题描述 投票:0回答:1

我有一个表单自然地做它的东西和上面的形式有3个Bootstrap选项卡和一些文本。如果Camp的特定选项卡已打开,则应将用户重定向到联系页面,而不是将数据传递到其页面。这样可行,但是如果用户单击Camp的选项卡然后将选项卡更改为其他选项,则表单不会重置其功能。

我怎样才能删除e.preventDefault()中的reset_form()并让表格做到这一点?

    var $reservationBtn= $("#js-reservation-btn");

    // Don't send form to it's page, but redirect user to Contact page
    function redirect_form_to_contact_page() {
        $reservationBtn.on('click', function(e) {
             e.preventDefault();
             window.location.href = 'https://www.example.com/contact';
        });
    }

    // Reset form so it works normally
    function reset_form() {
        $reservationBtn.on('click', function(e) {
            return true;
        });
    }

    // Depending on a tab clicked redirect to Contact or reset form
    $("#reservation__list a").click(function() {

        if ($(this).hasClass('js-reservation-tab-btn-camp')) {
            redirect_form_to_contact_page();
        }
        else {
            reset_form();
        }

    });
javascript jquery preventdefault
1个回答
0
投票

尝试unbind点击事件

$reservationBtn.unbind('click');
© www.soinside.com 2019 - 2024. All rights reserved.