Не удается отправить формы AJAX в IE8 - PullRequest
0 голосов
/ 26 ноября 2011

У меня есть скрипт запроса, который не работает на IE8.Все, что делает скрипт - это отправляет форму через ajax.Пожалуйста, помоги, если можешь.На странице sumbit обновляется, как будто IE не знает, что это форма ajax.

Я изменил тип кнопки с submit на button, и теперь, когда вы нажимаете кнопку, ничего не происходит.Кажется, это хорошо известная проблема с ie8.

<input class="nice-s" 
       type="submit" 
       id="send" 
       name="login_submit" 
       style="width:150px"  
       value="GET SEATED" 
       onClick="self.location=this.href; return false" />

Я добавил часть onClick, думая, что это может помочь, вот jquery

<script type="text/javascript">
    $(document).ready(function() {
        $('#send').click(function() {

            $('#waiting').show(500);
            $('#lginForm').hide(0);
            $('#message').hide(0);

            $.ajax({
                type: 'POST',
                url: 'auction_seat_hwnd.php',
                dataType: 'json',
                data: {
                    pid: $('#pid').val()
                },
                success: function(data) {
                    $('#waiting').hide(500);
                    $('#message').removeClass().addClass((data.error === true) ? 'error' : 'success').text(data.msg).show(500);
                    if (data.error === true) $('#loginForm').show(500);
                    else $('#send').hide(500);

                },
                error: function(XMLHttpRequest, textStatus, errorThrown) {
                    $('#waiting').hide(500);
                    $('#message').removeClass().addClass('error').text('There was an error.').show(500);
                    $('#loginForm').show(500);
                }
            });

            return false;
        });
    });
</script>

Есть ли решение для этого?

1 Ответ

2 голосов
/ 26 ноября 2011

Вместо того, чтобы настраивать кнопку отправки, связывать обработчик событий с jQuery и отключать его с событием DOM уровня 0:

<input class="nice-s" type="submit" id="send" name="login_submit" 
       style="width:150px"  value="GET SEATED" onClick="self.location=this.href; return false" />

Почему бы просто не использовать обычную кнопку:

<input class="nice-s" type="button" id="send" name="login_submit" 
       style="width:150px"  value="GET SEATED" />

Это никогда не приведет к тому, что ваша форма будет отправлена, поэтому вам не понадобятся эти ужасные onClick="self.location=this.href; return false", и настроенный вами обработчик кликов продолжит работать нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...