<?
if($_POST) {
header('Content-type: text/html; charset=windows-1251');
exit(iconv('utf-8', 'windows-1251', 'Текст в CP1251'));
}
?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<style>
</style>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script>
$(function() {
$('<iframe/>').appendTo('body').css({width : 600, height : 400}).attr('src', 'about:blank').load(function() {
var doc = this.contentWindow.document;
$(doc.head).append('<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />')
$.post(location, {a:1}, function(d) {
$(doc.body).append('<p>'+d+'</p>')
})
})
});
</script>
</head>
<body>
</body>
</html>
Поместите на свой локальный сервер под любым именем, но сохранив обязательно в utf-8. Локальный сервер также должен либо в этой кодировке по умолчанию работать, либо не должен передавать заголовка кодировки.
Запустите - iframe будет отображать строку в 1251, которую ему отдаст сервер, предварив вывод передачей соответствующего заголовка. И как можете убедиться проблем нет.