Функция jQuery, предотвращающая отправку формы - PullRequest
0 голосов
/ 08 декабря 2011

Я работаю на этом сайте: http://dev.rjlacount.com/treinaAronson-test

Проблема, с которой я столкнулся, связана с формой контакта (нажмите кнопку контакта в левом верхнем углу, чтобы открыть ее).

Я использую следующий jQuery, чтобы заставить контактную форму закрываться при нажатии клавиши Esc или нажатии на открытой панели:

$(document).bind({
    keydown:function(e) {
        if (e.keyCode == 27 ) {
            $("#panel").slideUp("3000");
            $("form#change-form-2")[0].reset();
            $('#fade , .popup_block').fadeOut(function() {
                $('#fade').remove();  //fade them both out
            });
        }
    }, click: function(e) {
        $("#panel").slideUp("3000");
    }
});
$('#flip, #panel').bind('click', function(e){return false});

Это работает для того, что мне нужно, но отключает функциональность моей кнопки отправки. Это также (хотя это более незначительная проблема) вызывает закрытие панели, если я щелкну правой кнопкой мыши в любом месте. Я довольно новичок в Javascript; Кто-нибудь может помочь мне предотвратить отключение функции кнопки контакта?

Любой совет будет принята с благодарностью!

Ответы [ 3 ]

1 голос
/ 08 декабря 2011

Чтобы форма отправки работала нормально, измените «return false» на следующее: это позволит форме функционировать нормально, не допуская всплытия события в документ.

$('#flip, #panel').bind('click', function(e){
    e.stopPropagation();
});
0 голосов
/ 08 декабря 2011

Что, если вы связываете клик только с #content div?Тогда в вашем #contact div не должно быть никаких проблем.

0 голосов
/ 08 декабря 2011

Вы можете установить атрибут disabled для button:

$("yourButtonSelector").attr("disabled", "disabled");
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...