Кодировка на ajax
Есть скрипт отправляющий данные формы:
jQuery(document).ready(function(){
jQuery('body').on('click', '#save-profile', function() {
var str = jQuery('#profileform').serialize();
alert(str);
jQuery.ajax({
url: url,
type: 'POST',
cache: false,
data: {
action : 'update',
str: str,
},
success: function(data){
jQuery('.response').html(data);
}
});
return false;
});
});
Соответственно в форму вводятся данные на кириллице. Alert str выводит: email=email%040gmail.com&name=%D0AF0FA%FA0 И в таком духе. Как это вылечить? |
Цитата:
http://javascript.ru/forum/misc/3455...rovat-url.html var str='http://usefulscript.ru/search.php?text=%D0%A1%D0%BA%D1%80%D0%B8%D0%BF%D1%82%D1%81%D0%BF%D0%BE%D0%B9%D0%BB%D0%B5%D1%80%D0%B0&searchid=1876853&l10n=ru&web=0#1118'; alert(decodeURIComponent(str)); |
Кириллицу нормально декодирует decodeURI, но значек @ остается крякозябрами
|
Янковиц,
а вас что это должно беспокоить? Сервер автоматически декодирует данные согласно переданным, которые по умолчанию application/x-www-form-urlencoded. И Ajax работает в UTF. |
Дело в том, что на стороне php у меня не проходит валидация
|
Значит косяки на сервере, клиент тут причем?
|
Да, все уже разобрался. Спасибо всем!
|
| Часовой пояс GMT +3, время: 07:47. |