Форум программистов, компьютерный форум, киберфорум
JavaScript
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/12: Рейтинг темы: голосов - 12, средняя оценка - 4.83
verter

проблема с русскими буквами при использовании метода navigate()

09.06.2011, 12:12. Показов 2601. Ответов 14
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Файл jsp строит html-документ, в котором имеется форма, на которой есть текстовое поле и селект. На onChange() селекта повешан обработчик в виде js-функции, в которой кое-что делается и по завершении опять вызывается этот же jsp-файл, т.е. html-страница перегружается, поэтому приходится посылать параметром значение текстового поля. В функции делается перезагрузка так:
navigate('имя_файла.jsp?текстовой_параме тр='+значение_текстового_параметра);
Страница перегружается, но в текстовом поле вместо русских букв появляются вопросики.
такую вещь прописываю:
<meta http-equiv='Content-Type' content='text/html; charset=windows-1251'>
и всё равно не помагает. Подскажите как правильно сделать?
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
09.06.2011, 12:12
Ответы с готовыми решениями:

Проблема с русскими буквами при отправке формы.
Проблема, с которой мне раньше никогда не приходилось сталкиваться. Вобщем если человек вводит в форму латинские буква, то всё ок. Если не...

Проблема при использовании сокетов с русскими буквами.
ДЕЛО В ТОМ ЧТО ПРИ ПЕРДАЧИ ДАННЫХ МЕЖДУ КЛИЕНТОМ И СЕРВЕРОМ ИСПОЛЬЗУЮТСЯ ТАКИЕ ЗАМОРОЧКИ КАК ПОТОКИ ВВОДА/ВЫВОДА ДАННЫХ ... КАК ЖЕ...

Проблема с русскими символами при использовании объекта MSXML2.XMLHTTP
Пытаюсь с gismeteo.ru выдрать таблицу погоды код следующий: &lt;% Set objXMLHTTP = Server.CreateObject('MSXML2.XMLHTTP') strURL =...

14
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
09.06.2011, 12:30
Попробуй сделать на странице такую форму
<form name='reload' action='имя_файла.jsp' method='get'>
<input type='hidden' name='текстовой_параметр' value=''>
</form>
Вместо navigate(...) пишем
var f = document.forms['reload'];
f.elements['текстовой_параметр'].value = значение_текстового_параметра;
f.submit();
0
3 / 3 / 6
Регистрация: 20.06.2010
Сообщений: 580
09.06.2011, 12:33
А причем тут JS? Копай в своем Java )
0
verter
09.06.2011, 12:40
Для vers: Я согласен, не по теме немного, просто проблемка у меня в использовании navigate(), а это javascript, поэтому я здесь решил спросить.
3 / 3 / 6
Регистрация: 20.06.2010
Сообщений: 580
09.06.2011, 12:50
Ну попробуй вариант bazile. Он самый пральный. Еще может попробовать
функцию escape()

navigate('имя_файла.jsp?текстовой_параме тр='+escape(значение_текстового_параметр а));

Но она какая та крывая ...
0
verter
09.06.2011, 12:51
для bazile: Спасибо за помощь! Может и получится так, но это на самом деле не решение проблемы, а её обход, а хочется понять почему же русские буквы не отображаются? К тому же на submit формы у меня срабатывает action, который грузит на клиента с помощью другого jsp-файла другую страничку.
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
09.06.2011, 12:59
verter, предложенный мною способ как раз и призван выяснить где проблема возникает - браузер неправильно русский текст передает или jsp неправильно его получает.

Можно еще попробовать перед вызовом navigate(...); добавить alert(значение_текстового_параметра) и посмотреть что он выдает.

> К тому же на submit формы у меня срабатывает action, который
> грузит на клиента с помощью другого jsp-файла другую страничку.
Не понял что ты имеешь в виду.
0
verter
09.06.2011, 13:15
<form name='Form' action='form_action.jsp' method='post'>

когда в js-функции делаю Form.submit(), то срабатывает её action
а в 'form_action.jsp' делается следующее:

if (request.getMethod().compareToIgnoreCase ('post') != 0) {
response.sendRedirect(request.getHeader( 'Referer'));
return;
}
response.sendRedirect('другая.jsp');
verter
09.06.2011, 13:20
для bazile: да, забыл сказать, что alert(), поставленный перед вызовом navigate() возвращает нормальные русские буквы, т.е. в jsp как-то неправильно кодировка задаётся.
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
09.06.2011, 13:20
По моему ты что-то мудришь. Я предлагаю сделать _еще одну_ форму со своим action. Сервер не в состоянии отличить результат работы
----------
navigate('имя_файла.jsp?текстовой_параме тр='+значение_текстового_параметра);
----------
и
----------
<form name='reload' action='имя_файла.jsp' method='get'>
<input type='hidden' name='текстовой_параметр' value=''>
</form>
...
var f = document.forms['reload'];
f.elements['текстовой_параметр'].value = значение_текстового_параметра;
f.submit();
----------
для него это один и тот же get запрос.
0
verter
09.06.2011, 13:32
для bazile: извини, но я не могу с тобой согласиться, потому что я сейчас ещё раз проверил: navigate() и form.submit() воспринимаются сервером по-разному, а именно: если используешь navigate(тот_же_самый.jsp), то action формы не срабатывает, а если делаешь form.submit(), то срабатывает.
verter
09.06.2011, 13:34
для bazile: может это потому так, что я использую метод 'post', а не 'get'?
verter
09.06.2011, 13:34
для bazile: может это потому так, что я использую метод 'post', а не 'get'?
86 / 62 / 69
Регистрация: 15.03.2007
Сообщений: 6,903
09.06.2011, 13:34
> может это потому так, что я использую метод 'post', а не 'get'?
Да
0
verter
09.06.2011, 14:16
решил проблемку: нужно было правильно настроить web-server: я использую Tomcat 5.5.7 В его конфигах, а именно в Tomcatcfgserver.xml нужно для порта 8080, который я использую прописать дополнительно следующий параметр: useBodyEncodingForURI='true'
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.06.2011, 14:16
Помогаю со студенческими работами здесь

Проблема с кодировкой при выводе содержимого из файла 1.js (то что написано русскими буквами) на страницу браузера
https://metanit.com/web/nodejs/4.1.php Я делаю лабораторную все по порядку как написано на сайте выше. Но у меня вместо имеющейся...

Проблема с русскими буквами
Всем привет! Столкнулся с проблемой: по идее, когда вводишь русскую маленькую букву, то должен выходить плюсик, но так происходит только на...

Проблема с русскими буквами в БД Access
Пробую на иностранном сервере писать скрипты на ASP к БД Access. Обнаружилась любопытная проблема: Загнал данные в базу на руском...

Проблема с кодировками (с русскими буквами) в консольном приложении.
Что нужно дописать чтобы программа выводила все надписи на русском языке, а не только первую? program Project1; {$APPTYPE...

Проблема с русскими буквами, когда работаю с ResourceBundle.getBundle()!
Прошу прощения, что поднимаю забытую тему. Но то, что я нашел в архивах не помогло мне решить проблему. Проблема с русскими буквами,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Новые блоги и статьи
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США. Нашел на реддите интересную статью под названием «Кто-нибудь знает, где получить бесплатный компьютер или. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru