Я думаю, это потому, что вы не используете событие onreadystatechange.Поскольку соединение асинхронное, ответ становится пустым сразу после его отправки.
Вы можете сделать это так:
var xhr = new XMLHttpRequest();
xhr.open("GET", "http://surfkid.redio.de/link.php", true);
xhr.onreadystatechange = function() {
if (xhr.readyState == 4) {
document.write(xhr.responseText);
}
}
xhr.send();