Как мне перекодировать строку Javascript в ISO-8859-1?

Я пишу расширение Chrome, которое работает с веб-сайтом, который использует ISO-8859-1. Просто чтобы дать некоторый контекст, мое расширение делает публикацию на форумах сайта более быстрой, добавляя более удобную форму публикации. Значение текстовой области, в которую записывается сообщение, затем отправляется через Ajax-вызов (с использованием jQuery).

Если сообщение содержит символы, такие какá эти символы отображаются как в опубликованном сообщении. Принудительное отображение в браузере UTF-8 вместо ISO-8859-1 делаетá появляются правильно.

Насколько я понимаю, Javascript использует UTF-8 для своих строк, поэтому я считаю, что если я перекодирую строку в ISO-8859-1 перед ее отправкой, это должно решить мою проблему. Однако, кажется, нет прямого способа сделать это транскодирование в Javascript, и я не могу коснуться кода на стороне сервера. Любой совет?

Я попытался настроить созданную форму для использования iso-8859-1 следующим образом:

var form = document.createElement("form");
form.enctype = "application/x-www-form-urlencoded; charset=ISO-8859-1";

А также:

var form = document.createElement("form");
form.encoding = "ISO-8859-1";

Но это не похоже на работу.

РЕДАКТИРОВАТЬ:

Проблема на самом деле заключалась в том, как jQuery urlencoding сообщения (или что-то по пути), я исправил это, сказав jQuery не обрабатывать данные и сделать это сам, как показано в следующем фрагменте:

function cfaqs_post_message(msg) {
  var url = cfaqs_build_post_url();
  msg = escape(msg).replace(/\+/g, "%2B");
  $.ajax({
    type: "POST",
    url: url,
    processData: false,
    data: "message=" + msg + "&post=Preview Message",
    success: function(html) {
      // ...
    },
    dataType: "html",
    contentType: "application/x-www-form-urlencoded"
  });
}

Ответы на вопрос(2)

Ваш ответ на вопрос