Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 15.03.2017, 14:10
svp svp вне форума
Интересующийся
Отправить личное сообщение для svp Посмотреть профиль Найти все сообщения от svp
 
Регистрация: 15.03.2017
Сообщений: 10

В некоторых браузерах неправильно отображается кодировка
Добрый день уважаемые!
Требуется Ваша помощь. Сам справиться не могу.
Проблема такая.
На сайте есть форма обратной связи на html, php.
Если какое-то поле не заполнено и нажимается кнопка Отправить, то появляется не большое, как бы всплывающее, окошко с фразой на русском языке, о том, что надо заполнить это поле. За эти окошки и текстом в них отвечает javascript файл. Так вот:
Браузер Google Chrome всегда выдает эти окошки с русским текстом, а вот в FireFox, Edge и Internet Explorer 11, периодически именно в этих окошках слетает кодировка - дней 5 везде нормально, потом вместо русских символов ромбики, а потом через несколько дней опять нормально. И так по кругу.
Все страницы сайта в windows-1251. В корне сайте в .htaccess в самом верху строка AddDefaultCharset windows-1251. Создал в директории, где находится этот файл js еще один .htaccess с выше указанной строкой.
Ни чего не помогло. В самом файле (он на html, а обработчик на php) формы обратной связи, там где начинается форма есть строка <script language="JavaScript" type="text/JavaScript" charset="windows-1251" src="zapoln_formi.js"></script>
А в Google Chrome всегда все нормально.
Помогите пожалуйста избавиться от слета кодировки в этих браузерах.
Сам сайт http://fanatgusyatnik.ru. Проверить можно так: заходите на сайт, сверху справа нажимаете "Написать мне письмо", попадаете в форму обратной связи и ни чего не заполняя в ней нажимаете "Отправить", появится всплывающее окно с ромбиками вместо фразы Введите Ваше имя!
Если какие исходники нужны - скажите, выложу.
Ответить с цитированием
  #2 (permalink)  
Старый 15.03.2017, 14:37
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

svp,
ошибка не проявилась, но
замените в zapoln_formi.js функцию hilite на это
function hilite(field)
{
 // подсветить пустое поле, чтобы заполнил пользователь

  document.my_form.elements[field].style.backgroundColor="#AEC6DE";

}
Ответить с цитированием
  #3 (permalink)  
Старый 15.03.2017, 14:59
svp svp вне форума
Интересующийся
Отправить личное сообщение для svp Посмотреть профиль Найти все сообщения от svp
 
Регистрация: 15.03.2017
Сообщений: 10

Сообщение от рони Посмотреть сообщение
svp,
ошибка не проявилась
Мне раньше тоже говорили некоторые юзеры, что у них нормально.
Почему так?

Заменил как Вы посоветовали. И страницу с формой перезагружал и кзш браузера очищал - результат тот же, ромбики.
Пока вернул старый zapoln_formi.js.
А в Гугл все нормально.

Последний раз редактировалось svp, 15.03.2017 в 15:03.
Ответить с цитированием
  #4 (permalink)  
Старый 15.03.2017, 15:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

Сообщение от svp
Заменил
незаметно
Ответить с цитированием
  #5 (permalink)  
Старый 15.03.2017, 17:50
svp svp вне форума
Интересующийся
Отправить личное сообщение для svp Посмотреть профиль Найти все сообщения от svp
 
Регистрация: 15.03.2017
Сообщений: 10

Сообщение от рони Посмотреть сообщение
незаметно
Ну я же написал, что заменил, результат тот же и пока вернул старый обратно.
Ответить с цитированием
  #6 (permalink)  
Старый 15.03.2017, 18:00
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

svp,
результат должен был быть в подсветке ошибочного поля -- но раз вам ненужно
Цитата:
// подсветить пустое поле, чтобы заполнил пользователь
можно ничего не менять, в том виде каком эта функция у вас сейчас, она не рабочая.
Ответить с цитированием
  #7 (permalink)  
Старый 15.03.2017, 18:05
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

svp,
попробуйте заменить файл целиком на это
function hilite(field) {
     document.my_form.elements[field].style.backgroundColor = "#AEC6DE"
}

function testData() {
    if (document.my_form.elements["Name_user"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0412\u0430\u0448\u0435 \u0438\u043c\u044f!\t\n");
        hilite("Name_user");
        document.my_form.elements["Name_user"].focus();
        return false
    }
    if (document.my_form.elements["E_mail"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 E-mail!\t\n");
        hilite("E_mail");
        document.my_form.elements["E_mail"].focus();
        return false
    }
    if (document.my_form.elements["Subject"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0442\u0435\u043c\u0443 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f!\t\n");
        hilite("Subject");
        document.my_form.elements["Subject"].focus();
        return false
    }
    if (document.my_form.elements["Message"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0412\u0430\u0448\u0435 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435!\t\n");
        hilite("Message");
        document.my_form.elements["Message"].focus();
        return false
    }
    if (document.my_form.elements["keystring"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u0447\u043d\u044b\u0439 \u043a\u043e\u0434!\t\n");
        hilite("keystring");
        document.my_form.elements["keystring"].focus();
        return false
    }
};
Ответить с цитированием
  #8 (permalink)  
Старый 15.03.2017, 18:54
svp svp вне форума
Интересующийся
Отправить личное сообщение для svp Посмотреть профиль Найти все сообщения от svp
 
Регистрация: 15.03.2017
Сообщений: 10

Сейчас зашел и опять все нормально со старым моим файлом.
Ни чего понять не могу.
Поставил Ваш новый файл. С ним тоже все нормально с кодировкой и действительно незаполненные поля стали подсвечиваться.
Убрал Ваш новый и поставил свой старый. Буду ждать первого слета кодировки и потом поменяю на Ваш. Интересно восстановится ли кодировка с Вашим, а сейчас не поймешь - исправилось или нет, он и с моим старым заработал.
У меня к Вам большая просьба.
На этом сайте есть еще форма покупки сделанная на основе этой формы обратной связи, только добавлено одно поле и фразы в некоторых этих окнах изменены.
Не могли бы Вы и для этого zapoln_formi.js написать новый скрипт?
На любом товаре, в магазине, нажать кнопку КУПИТЬ и Вы в этой форме.
Я так понял, что у Вас русские символы в нем как-то закодированы, а я вообще-то ни бум-бум в java.
Да и БОЛЬШОЕ СПАСИБО ВАМ!
Ответить с цитированием
  #9 (permalink)  
Старый 15.03.2017, 19:02
svp svp вне форума
Интересующийся
Отправить личное сообщение для svp Посмотреть профиль Найти все сообщения от svp
 
Регистрация: 15.03.2017
Сообщений: 10

Сообщение от Rise Посмотреть сообщение
svp, у тебя сами файлы в разных кодировках:
- zapoln_formi.js - Macintosh
Тебе надо пересохранить их в windows-1251.
Сейчас открыл этот свой старый zapoln_formi.js в Notepad++ и он показывает, что кодировка у него ANSI, а не Macintosh.

P.S. У меня в опциях была снята галочка с Авто определения кодировки, включил авто определение и действительно Macintosh.

Последний раз редактировалось svp, 15.03.2017 в 19:24.
Ответить с цитированием
  #10 (permalink)  
Старый 15.03.2017, 19:14
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,112

svp,
вам описали причину -- пост №8 , сохраняйте все файлы в одной и тойже кодировке
Сообщение от svp
русские символы в нем как-то закодированы
юникод

function hilite(field) {
    document.my_form.elements[field].style.backgroundColor = "#AEC6DE"
}

function testData() {
    if (document.my_form.elements["Name_user"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0412\u0430\u0448\u0435 \u0438\u043c\u044f!\t\n");
        hilite("Name_user");
        document.my_form.elements["Name_user"].focus();
        return false
    }
    if (document.my_form.elements["E_mail"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 E-mail!\t\n");
        hilite("E_mail");
        document.my_form.elements["E_mail"].focus();
        return false
    }
    if (document.my_form.elements["Subject"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043d\u043e\u043c\u0435\u0440 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u043e\u0433\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430!\t\n");
        hilite("Subject");
        document.my_form.elements["Subject"].focus();
        return false
    }
    if (document.my_form.elements["Subject"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043d\u043e\u043c\u0435\u0440 \u043a\u043e\u043d\u0442\u0430\u043a\u0442\u043d\u043e\u0433\u043e \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430!\t\n");
        hilite("Subject");
        document.my_form.elements["Subject"].focus();
        return false
    }
    if (document.my_form.elements["Address"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u0430\u0434\u0440\u0435\u0441 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438!\t\n");
        hilite("Address");
        document.my_form.elements["Address"].focus();
        return false
    }
    if (document.my_form.elements["Message"].value == "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043d\u0430\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u0432\u0430\u0440\u0430 \u0438 \u0435\u0433\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e!\t\n");
        hilite("Message");
        document.my_form.elements["Message"].focus();
        return false
    }
    if (document.my_form.elements["keystring"].value ==
        "") {
        alert("\n\u0412\u0432\u0435\u0434\u0438\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u0447\u043d\u044b\u0439 \u043a\u043e\u0434!\t\n");
        hilite("keystring");
        document.my_form.elements["keystring"].focus();
        return false
    }
};
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Неправильно отображается дата в скрипте norb Общие вопросы Javascript 0 23.11.2016 18:16
Не работают фреймворки в некоторых браузерах Mateus Общие вопросы Javascript 18 25.01.2013 13:00
Не отображается ява скрипт в других браузерах. Окромя Мозиллы. swatello Элементы интерфейса 5 17.03.2011 16:24
Проблема с меню не корректно отображается в браузерах отличных от IE (т.е. FF Opera) 3xv Элементы интерфейса 2 16.04.2009 19:51