|
|
|
| Приветствую!
Столкнулся с непонятной проблемой. В IE 7 не работает javascript. Причем я тестил на локальной машине, все работало во всех браузерах (IE, FF, Opera), выложил проект в Инет, и в IE javascript'ы перестали пахать.
Зайдите на dedjus.ru через IE и откройте просто форму регистрации и введить в поле email что-нибудь или попробуйте нажать кнопку ВХОД. В IE слева снизу появляется "Ошибка на странице", в FF и Опере все работает. Не пойму, где копать, на локалке в IE ничего такого нет. | |
|
|
|
|
|
|
|
для: EHOT611
(01.06.2009 в 13:30)
| | >В IE слева снизу появляется "Ошибка на странице"
Да, появляется такое сообщение, когда курсор покидает поле для ввода email'a (ONCHANGE).
>в FF и Опере все работает
Это вам показалось - в FF и Опере тоже не "пашет" и тоже возникает ошибка.
Можете проверить это в "Консоли ошибок".
(Если не знаете - как эту самую консоль открыть? - читайте http://www.softtime.ru/forum/read.php?id_forum=4&id_theme=65489&page=1)
Одну вашу программную ошибку я вам укажу - посылаемое серверу значение VALUE из любого поля
(кое заполняет пользователь) необходимо кодировать методом encodeURIComponent (),
а вы этого не делаете. Вот здесь, например, надо прописать так:
http_requestX2.open('GET', 'functions/check_email.php?'+encodeURIComponent (url), true);
| Соответственно, исправьте и во всех остальных аналогичных ваших функциях.
PS. Зачем вам НЕСКОЛЬКО абсолютно одинаковых по сути функций - я совершенно не понимаю...
но это уже вопрос ваших возможностей, как программиста :-)
Что до этой конкретной ошибки, то здесь ваша серверная php-программа проверки email'a
возвращает какой-то нечитаемый символ в конце фразы "Email не занят".
Браузер, пытаясь выполнить вашу команду
document.getElementById("RequestStatus3").innerHTML = http_requestX1.responseText;
не может интерпретировать этот нечитаемый символ и выдает ошибку синтаксиса.
PS2. У какого дурака вы подсмотрели использование протокола "javascript:" для событий тегов?
Этот протокол используется ТОЛЬКО и ИСКЛЮЧИТЕЛЬНО в атрибуте HREF тега A.
В абсолютно ВСЕХ браузерах по-умолчанию используется именно Javascript, поэтому
дополнительно указывать это браузеру НЕ НАДО - это просто засорение кода совершенно
лишними байтами. | |
|
|
|
|
|
|
|
для: PAT
(01.06.2009 в 15:47)
| | Перепробовав все, я пришел к выводу, что эти ошибки возникают из-за какой-то разницы в настройках машин. Ведь на локальной машине никаких ошибок не выдается, а вот на хостинге...
У меня только в IE это ошибка, через FF и Оперу я зарегиться могу в этом скрипте и зайти на сайте.
UPDATE: Залил дупликат этого сайта на другой хостинг, там даже в IE работает. | |
|
|
|
|
|
|
|
для: EHOT611
(01.06.2009 в 20:07)
| | Уфф. Проипавшись, извиняюсь за выражение, с обеда наконец найден корень ошибки.
Админы, который настраивали сервер и апач, в кодировке апача написали какого-то хрена невнятый cp1251, вместо windows-1251. Как заменил, сразу все стало работать как нужно.
PAT, спасибо что уделил нубу время xD | |
|
|
|
|
|
|
|
для: EHOT611
(01.06.2009 в 20:07)
| | >Перепробовав все, я пришел к выводу, что эти ошибки возникают из-за какой-то разницы в настройках машин. Ведь на локальной машине никаких ошибок не выдается, а вот на хостинге...
какая разница где - код в браузере юзера исполняется | |
|
|
|
|
|
|
|
для: mihdan
(06.06.2009 в 00:35)
| | Разница таки есть. столкнулся с такой же проблемой на локальном апаче. Скрипты хорошо работают в эксплорере и гугльхроме. В опере наотрез отказываются. Но когда этот же файл октрываю не через http://localhpost/имя_файла.хтмл а просто через "файл-открыть" в меню опера - скрипты работают без ошибок. | |
|
|
|