Недавно я попытался разработать дополнение для Firefox для автоматической обработки некоторых подпрограмм.
Существует некоторая веб-страница, состоящая из множества ссылок, и каждая ссылка указывает на страницу, которая содержит тег формы. Когда веб-страница загружена, я хочу добавить скрипт, который проходит через каждую ссылку на веб-странице, и нажать кнопку «Отправить» внутри.
Я использую $ .get, чтобы получить каждую ссылку на веб-странице, анализирую данные постов с помощью $ (‘form’). Serialize () и нажимаю кнопку отправки, используя $ .post.
Проблема в том, что страницы, с которыми я имею дело, закодированы в формате big5. Когда jQuery загружает данные, он преобразует информацию на странице в Unicode. А затем я использую $ .post для отправки данных Unicode. Но серверная часть принимает данные только в кодировке big5.
$('a').each(function(){
$.ajax({
type: 'GET',
url: this.href,
success: function(data){
var html = $.parseHTML(data);
$.ajax({
type: 'POST',
url: $('form', html).attr('action'),
data: $('form', html).serialize(),
success: function(data){
console.log(data);
}
});
}
});
});
Я не имею никакого контроля над серверной стороной, поэтому единственный способ, которым я могу это сделать, — это изменить мои скрипты дополнений. Я много гуглил с ключевыми словами (jQuery, encoding, big5, form) и до сих пор не дал результатов.
Можем ли мы отправить данные в big5 через jQuery.post? Или есть другой способ, которым я могу закончить свое дополнение?
Спасибо 🙂
Задача ещё не решена.
Других решений пока нет …