За последние 24 часа нас посетили 59677 программистов и 1851 робот. Сейчас ищут 1518 программистов ...

jquey ajax и гет запрос

Тема в разделе "JavaScript и AJAX", создана пользователем ShamahN, 21 июл 2010.

  1. ShamahN

    ShamahN Активный пользователь

    С нами с:
    10 апр 2007
    Сообщения:
    1.449
    Симпатии:
    0
    Адрес:
    г.Волгодонск Роствской обл.
    В общем такая проблема.
    Проект полностью на юникоде. На одной страничке есть поиск, реализованный jquery ajax-ом.
    Чудеса в том, что он перекодирует строчку поиска с кирилицей в ескейп-последовательность cp1251
    Код (Text):
    1. ?callback=jsonp1279702445796&name_startsWith=%C2%EE%EB%E3%EE%E4%EE
    Собственно по строчке все видно.
    Никто не сталкивался с такой проблемой?
    Нагуглил только, что народ перекодирует на стороне сервера полученные данные. Но этож кастыль. Может можно заставить его перекодировать правильно?
     
  2. Padaboo

    Padaboo Старожил
    Команда форума Модератор

    С нами с:
    26 окт 2009
    Сообщения:
    5.242
    Симпатии:
    1
    я парился парился с кодировками этими и всякими костылями, потом решил все тупо в utf-8 сделать =)
     
  3. ShamahN

    ShamahN Активный пользователь

    С нами с:
    10 апр 2007
    Сообщения:
    1.449
    Симпатии:
    0
    Адрес:
    г.Волгодонск Роствской обл.
    так у меня все тупо в нем и есть. Абсолютно все файлы проекта на нам. И каждая страничка начинается с заголовка header("Content-Type: text/html; charset=UTF-8;");
    а вот jquery ajax при гет запросе почему-то кодирует не так
     
  4. Volt(220)

    Volt(220) Активный пользователь

    С нами с:
    11 июн 2009
    Сообщения:
    1.640
    Симпатии:
    1
    Глупый вопрос: А сами файлы jQuery? В UTF?
    Dnjhjq djghjc^ Во всех браузерах?
     
  5. ShamahN

    ShamahN Активный пользователь

    С нами с:
    10 апр 2007
    Сообщения:
    1.449
    Симпатии:
    0
    Адрес:
    г.Волгодонск Роствской обл.
    [js]jQuery.ajax({
    url: xx.xxl,
    dataType: "jsonp",
    data: {
    "name_startsWith": request.term
    },[/js]

    Вот эта штука формирует строчку гет-запроса где для кириллического request.term перекодируется в escape-последовательность в кодировке windows-1251:
     
  6. ShamahN

    ShamahN Активный пользователь

    С нами с:
    10 апр 2007
    Сообщения:
    1.449
    Симпатии:
    0
    Адрес:
    г.Волгодонск Роствской обл.
    Не) не глупый..
    да, ВСЕ файлы в ютф.
    И, да - во всех браузерах

    Но как не странно.
    все заработало.
    Пол-дня парился. Ничего вроде не сделал. А оно заработало.
    Надо отдохнуть...