- Вызов JQuery Ajax работает во всех браузерах, кроме IE 10
- 5 ответов
- Пост ajax работает на Chrome, но не работает на Firefox и Safari
- 2 ответа
- AJAX — Поддержка браузера
- Запись определенного кода браузера
- Заставить ajax работать во всех браузерах
- 2 ответа
- Не работает ajax во всех браузерах
- Полезная информация
- №1 23-04-2009 12:21:35
- ajax не работает, где включить?
- №2 23-04-2009 23:35:22
- Re: ajax не работает, где включить?
- №3 24-04-2009 09:08:18
- Re: ajax не работает, где включить?
- №4 24-04-2009 13:17:17
- Re: ajax не работает, где включить?
- №5 29-04-2009 13:21:49
- Re: ajax не работает, где включить?
- №6 29-04-2009 13:43:37
- Re: ajax не работает, где включить?
- №7 29-04-2009 17:22:53
- Re: ajax не работает, где включить?
- №8 29-04-2009 22:24:03
- Re: ajax не работает, где включить?
- №9 30-04-2009 15:58:23
- Re: ajax не работает, где включить?
- Board footer
Вызов JQuery Ajax работает во всех браузерах, кроме IE 10
Следующий вызов ajax работает во всех браузерах, кроме IE10 (если я не установил его в режим стандартов IE9). Я смотрю на него с помощью скрипачей, и кажется, что параметр не передается в ie10 каких-либо идей?
Выдает следующую ошибку
5 ответов
Похоже, это ошибка jQuery с IE10 (по крайней мере, предварительная версия Windows 7). Данные POST не отправляются в запросе, я зарегистрировал подробную информацию об ошибке в jQuery: http://bugs.jquery.com/ticket/12790#comment:18
ОБНОВЛЕНИЕ : в моем случае это была ошибка в Free Download Manager, которая вызвала проблему в IE10. Они исправили проблему (3.9.2, сборка 1281. — 26 декабря 2012 г.), чтобы она воспроизводилась отлично. Если вы прочитаете комментарии в приведенной выше ссылке jQuery, вы увидите, что кто-то это тоже подобрал, и удаление FDM также устранило проблему. Так что это не проблема IE10 или jQuery, а скорее надстройка, изменяющая нормальное поведение.
Я столкнулся с той же проблемой с запросом Ajax POST объекта FormData в IE10 / jQuery 1.11.1. На сервер не были отправлены ни данные POST, ни прикрепленные файлы. Были отправлены только параметры URL.
Я использовал этот патч, чтобы добавить обратный вызов прогресса в jQuery Ajax:
Без патча запрос отлично работает в IE10.
Патч отлично работает во всех остальных браузерах.
Отправка данных по POST в запросе ajax не работает в IE10 (даже если в моем случае не установлены дополнительные программы, которые могут мешать IE10). Отправка данных за GET в запросе ajax вместо этого работает для меня.
Сначала в соответствии с консолью ошибок JavaScript это казалось проблемой jquery и проблемой с данными JSON (например, неправильной кодировкой или недопустимыми символами или недопустимым json), соответственно, при отправке данных json в ответе, но все было в порядке с данные json. Затем я понял, что данные POST не отправляются, и изменил параметр «type» в вызове jquery $ .ajax на «GET», что устранило проблему.
Я знаю, что этот вопрос задавали давно, но хотел добавить свой ответ.
Это не ошибка IE или jquery. Некоторые диспетчеры загрузок, такие как DAP, FDM и IDM , отвечают за эту проблему (даже если они отключены). Удаление этого диспетчера загрузок сработает.
Проблема в том, что этот диспетчер загрузки имеет неполное преобразование некоторых интерфейсов URLMon , и это мешает загрузке POST .
Немногие ребята также сообщили, что Google Gears также несет ответственность за эту проблему. После отключения проблема исчезнет. (Не тестировалось)
В моем случае причиной был Download Accelerator Plus. Удаление DAP решило проблему.
Источник
Пост ajax работает на Chrome, но не работает на Firefox и Safari
Я столкнулся с проблемой, когда метод jjery ajax post работает в chrome, но не работает в safari или firefox. Я просмотрел все другие подобные посты, и они не решают проблему. Всякий раз, когда я запускаю код ajax, он просто возвращает весь HTML-код страницы, на которой находится форма.
Вот мой JavaScript:
Независимо от содержимого файла PHP, на который указывает функция, он не будет работать, как запланировано. Я попытался создать файл PHP с одной строкой эха, и я все еще сталкиваюсь с той же проблемой. Я реализовал блок ошибок в ajax, и он ничего не возвращает. Я также не получаю сообщение об ошибке в консоли, кроме: «Синхронный XMLHttpRequest в основном потоке устарел из-за его пагубных последствий для конечного пользователя. Для получения дополнительной информации http://xhr.spec.whatwg.org/» в Firefox
Редактировать: я добавил contentType: false, и он все еще не работает должным образом в Firefox и Safari
2 ответа
Я наконец нашел ответ.
Ошибка в следующей строке кода:
По какой-то причине Firefox и Safari неправильно получают значение selectedButton (хотя Chrome делает), что приводит к неправильной установке переменной url. Чтобы обойти это, я сделал следующее:
Мне был нужен метод submitButton, потому что у меня было две кнопки отправки для формы, и я пытался найти, какая из них была нажата. Этот альтернативный метод делает это и может передаваться во всех трех браузерах, которые я тестировал. Возможно, это не оптимальное решение проблемы отправки двумя кнопками, но у меня это сработало, и теперь Ajax работает без проблем.
Вы пытались свернуть свой код в готовом документе?
Также, насколько я знаю, теперь правильно использовать on ():
На данный момент это не похоже, что будет какая-либо проблема. ..
Источник
AJAX — Поддержка браузера
Увы, все доступные браузеры не поддерживают AJAX. Вот список основных браузеров, поддерживающих AJAX.
- Mozilla Firefox 1.0 и выше.
- Netscape версии 7.1 и выше.
- Apple Safari 1.2 и выше.
- Microsoft Internet Explorer 5 и выше.
- Konqueror.
- Opera 7.6 и выше.
Когда вы будете писать свое следующее приложение, обратите внимание на браузеры, которые не поддерживают AJAX.
ПРИМЕЧАНИЕ . Когда мы говорим, что браузер не поддерживает AJAX, это просто означает, что браузер не поддерживает создание объекта XMLHttpRequest объекта Javascript.
Запись определенного кода браузера
Самый простой способ сделать ваш исходный код совместимым с браузером — использовать блоки try. catch в вашем JavaScript.
В приведенном выше коде JavaScript мы три раза пытаемся создать наш объект XMLHttpRequest. Наша первая попытка:
- ajaxRequest = new XMLHttpRequest();
Это для браузеров Opera 8.0+, Firefox и Safari. Если это не удается, мы попробуем еще два раза сделать правильный объект для браузера Internet Explorer:
- ajaxRequest = new ActiveXObject(«Msxml2.XMLHTTP»);
- ajaxRequest = new ActiveXObject(«Microsoft.XMLHTTP»);
Если это не сработает, мы можем использовать очень устаревший браузер, который не поддерживает XMLHttpRequest , что также означает, что он не поддерживает Ajax.
Скорее всего, наша переменная ajaxRequest теперь будет установлена на любой стандарт XMLHttpRequest, который использует браузер, и мы можем начать отправку данных на сервер.
Источник
Заставить ajax работать во всех браузерах
У меня есть приложение с огромным ajax. Иногда ajax не работает должным образом, когда пользователь закрывает браузер. Это происходит из-за того, что в их браузере установлено множество сторонних надстроек, которые останавливают (может быть) правильную работу ajax.
Теперь у меня нет контроля над пользователями, поэтому я не могу заставить пользователей заботиться о своем браузере. Что мне теперь делать в этой ситуации? Есть ли способ заставить ajax работать даже с плохим расширением, установленным в браузере?
Следующий код не работает, если в браузере установлены плохие расширения (например, панель инструментов запроса, лента новостей alibaba и т. Д.)
2 ответа
Вы не можете рассчитывать на то, что всегда сможете выполнять вызов ajax, когда пользователь покидает вашу страницу. Это не то, что вы можете надежно сделать в браузере. Иногда это может работать, но не гарантируется, что будет работать всеми возможными способами закрытия веб-страницы.
Есть некоторые обходные пути:
Вы можете поддерживать соединение веб-сокета со своей страницы на свой сервер, и когда пользователь покидает страницу, сокет будет автоматически закрыт браузером, и тогда ваш сервер узнает, что пользователь покинул страницу.
Вы можете сделать так, чтобы ваша страница опрашивала ваш сервер каждые несколько минут с помощью простого вызова ajax, и когда сервер больше не получает вызов ajax для опроса, он знает, что страница закрыта.
Вы можете сделать это, сохранив файл cookie в браузере, чтобы вызывать вашу страницу через каждую минуту, когда размещен код ajax. попробуйте этот угол
Источник
Не работает ajax во всех браузерах
Полезная информация
Страницы: 1
№1 23-04-2009 12:21:35
ajax не работает, где включить?
Не выдвигаются сделанные не ajax панельки сайтов, не постятся без перезагрузки страницы комменты, на некоторых сайтах не работает редирект. Ява и Ява-скрипт включены, никаких блокеров не стоит, где найти опцию включающую и выключающую AJAX ?
№2 23-04-2009 23:35:22
Re: ajax не работает, где включить?
Странно, однако. Вы знаете, что такое Ajax, и для чего он нужен Вы тоже знаете. При этом Вы почему-то не в курсе, что каждый браузер, понимает свой диалект JavaScript — пример.
Некоторые горе-программисты не обеспечивают поддержки Firefox в своих скриптах. К счастью, таких сайтов становиться все меньше.
Отредактировано ru-vadik (23-04-2009 23:35:50)
Не стойте на месте — ищите новые тупики 🙂
№3 24-04-2009 09:08:18
Re: ajax не работает, где включить?
Странно, однако. Вы знаете, что такое Ajax, и для чего он нужен Вы тоже знаете. При этом Вы почему-то не в курсе, что каждый браузер, понимает свой диалект JavaScript — пример.
Некоторые горе-программисты не обеспечивают поддержки Firefox в своих скриптах. К счастью, таких сайтов становиться все меньше.
Ну вот такой вот я, поверхностно развитый. а на FF пересел пару недель назад, до этого несколько лет пользовался оперой. спасибо за ответ!
№4 24-04-2009 13:17:17
Re: ajax не работает, где включить?
Некоторые поддержку IE не добавляют, это интереснее.
№5 29-04-2009 13:21:49
Re: ajax не работает, где включить?
мне кажется дело не в поддержке, к примеру twitter, там то уж точно поддержка есть, но и там не работает ajax, м.б. дело в прокси? тогда почему в той же опере он работает?
№6 29-04-2009 13:43:37
Re: ajax не работает, где включить?
Давайте адрес сайта.
Не стойте на месте — ищите новые тупики 🙂
№7 29-04-2009 17:22:53
Re: ajax не работает, где включить?
когда отправляю твит он должен сразу появиться в ленте, но приходится перезагружать страницу
адрес для всех зарегистрированных: http://twitter.com/home
мой: http://twitter.com/maratka
Отредактировано Марат (29-04-2009 17:23:17)
№8 29-04-2009 22:24:03
Re: ajax не работает, где включить?
Не хочется регистрироваться.
Перед заходом на сайт очистите «Консоль ошибок» (меню «Инструменты»). Выполните действия, которые неправильно работают, а затем вновь посмотрите «Консоль ошибок». Интересуют именно ошибки, а не предупреждения и сообщения.
Не стойте на месте — ищите новые тупики 🙂
№9 30-04-2009 15:58:23
Re: ajax не работает, где включить?
Вот это правильный способ, я сразу нашел причину:
Ошибка: [Exception. «Component is not available» nsresult: «0x80040111 (NS_ERROR_NOT_AVAILABLE)» location: «JS frame :: file:///E:/Program%20Files/Mozilla%20Firefox/components/nsSessionStore.js :: sss_saveState :: line 1909» data: no]
Источник: file:///E:/Program%20Files/Mozilla%20Firefox/components/nsSessionStore.js
Строка: 1909
лечить буду переустановкой, Спасибо!
Страницы: 1
Board footer
Powered by PunBB
Modified by Mozilla Russia
Copyright © 2004–2020 Mozilla Russia
Язык отображения форума: [Русский] [English]
Источник