event.preventDefault (); перестал работать в ФФ

0

У меня есть следующий код, который отлично работает до сих пор, event.preventDefault(); похоже, не срабатывает в FireFox? В Chrome код все еще работает отлично, однако в Firefox он берет меня на пустую страницу, и вместо этого я вижу сгенерированный код.

    $("#generate_code").click(function(){
        event.preventDefault();
        $('#code').html('Generating Code..');
        hideshow('loading',1);
        setTimeout(function() {
            $.get("generate-code.php", function(data) {
                $("#code").html(data);
            });
            hideshow('loading',0);
        }, 2000);
   });

генерировать-code.php:

function generateRandomString($length = 50) {
    $characters = '!@#$%^&*()0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $randomString = '';
    for ($i = 0; $i < $length; $i++) {
        $randomString .= $characters[rand(0, strlen($characters) - 1)];
    }
    return $randomString;
}

$invitecode = generateRandomString();
echo $invitecode;
Теги:

1 ответ

2
Лучший ответ

Вы должны вызвать preventDefault для объекта события, переданного в качестве аргумента обработчику, чтобы убедиться, что все работает кросс-браузер.

$("#generate_code").click(function(e){
    e.preventDefault();
    ...
  • 0
    Тот же результат, Chrome OK, Firefox переходит по ссылке
  • 0
    извините, используя $("#generate_code").click(function(event) сейчас, похоже, работает
Показать ещё 1 комментарий

Ещё вопросы

Сообщество Overcoder
Наверх
Меню